能力值:
( LV12,RANK:210 )
|
-
-
2 楼
不可以直接访问的,这个变量的作用域是这个函数,尽管它的生存期是整个程序的执行过程
至于是否可以通过指针访问没有试过
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
char* szTemp=NULL;
void FunTest(void)
{
static char szPrivate[100]={NULL};
szTemp=szPrivate;
}
别的涵数中,应该可以用szTemp指针来访问吧
|
能力值:
( LV9,RANK:290 )
|
-
-
4 楼
是可以访问的,不过要很清楚静态变量的排列位置才行:
如下面的代码:
//////////////////////////////////
#include <iostream.h>
void maa();
void main()
{
static int a = 8;
int *tmp;
cout << a << "\t" << &a <<endl;
maa();
cout << a << "\t" << &a <<endl;
tmp = ( &a + 1 );
cout << *tmp << "\t" << tmp << endl;
}
void maa()
{
static int a = 10;
cout << a << "\t" << &a <<endl;
}
/////////////////////////////
执行的结果:
8 0x00409040
10 0x00409044
8 0x00409040
10 0x00409044
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
很谢谢"酷酷"兄和"ProZel"兄的回复,我的理解,这样对吗?
void aaa();
void main()
{
static int a=10;
printf("%d %ld\n",a,&a);
aaa();
}
void aaa()
{
static int b=100;
int *tmp=&b;
tmp--;
printf("%d %ld\n",*tmp,tmp);
}
|
能力值:
( LV12,RANK:210 )
|
-
-
6 楼
本人认为这样做是一种比较危险的做法
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
最初由 thebutterfly 发布 本人认为这样做是一种比较危险的做法
不冒险,哪来的收获?
|
|
|