<t1.c>中
static int a;
setA()
{ a=100;}
getA()
{printf("%d",a);}
<t2.c>中
static int a;
setB()
{ a=200;}
getB()
{printf("%d",a);}
<main.c>中
main()
{ setA();
getA();
getB();}
程序运行的结果是a=100。即a变量同步。只在t1.c中进行赋值,但是两个不同的.c文件中获取的a值是相同的。
请问这该怎么解释啊?
问题里面写的是,两个不同的.c文件它们俩set函数操作的是同一个变量a吗?static修饰的变量,在t1.c中定义修饰,那么在t2.c中应该是不能操作的啊,怎么这个例子好像是在操作同一个变量a呢?请继续指教,谢谢。
这个问题运行结果我自己看过很久了,就是因为解释不了才拿来给大家看看。谢谢。理论的确解释不了。能解释的请帮忙给个想法也行。谢谢。
本回答被网友采纳