C语言问题——全局变量与局部变量的问题

2025-03-23 17:51:29
推荐回答(5个)
回答1:

x在 int x=3; printf("%d\t",min(x,y)); { int x=1; y=2; printf("%d\t",min(x,y)); }种进行了重新定义,所以用重新定义赋值的x替换了全局的X值,而printf("%d\n",min(x,y));中执行的是全局的x,y
,其中y已经被赋值为2,所以最后一个输出的值为2

回答2:

问题出在{ int x=1; y=2; printf("%d\t",min(x,y)); }中的"int x=1;"这个分号上,因此在这里y=2为全局变量新赋值2而没有被定义为局部变量了。若改为逗号,则y为局部变量,最终结果为
3 1 3,

回答3:

你这句话整个是在main函数里的啊,在main函数中更改全局变量后输出的就是更改后的值。

回答4:

局部变量和全局变量重名时局部变量优先

回答5:

。额。。。最后一个输出是x=3和y=2比较大小的
。。。。。。。。。。。。。。。。。。。。。。。。