永发信息网

全局变量的值会变吗?

答案:3  悬赏:60  手机版
解决时间 2021-01-04 13:59
int k=0;
void fun(int m)
{m+=k;k+=m;printf("m=%dk=%d",m,k++);}
main( )
{ int i=4;
fun(i++); printf("i=%dk=%d\n",i,k);
} 为啥第二个k=5
最佳答案
当程序执行fun(i++)时,此时fun(int m)中实参m的值是4,在printf函数中有k++,此时k值是4,所以打印的值是k,然后再将k++;所以在main函数中的k变成了5。
k++和++k是不一样的。所以你要是改成printf("m=%dk=%d",m,++k);那么在一开始的打印中,就会显示k值为5
全部回答
.........语句太不规范。。。看不来。。 再写一遍吧。。
简单的说,在一个程序中任何位置都能用的变量就是全局变量。 要想改变它的值,很简单,就是给它赋新值。以vb为例,例如: public a as int a=0 /这是定义一个变量,并赋初值。 在程序中用到a时,可以赋值(例如:a=10)那么就能改变它的值,这个改变的值是会影响整个程序的(无论有多少个子程序,都会被影响到)。 如果要再改变它的值,那么就要重新赋值。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单选题Herdreamofbecomingadancercame____
请问,下周还有多少人有勇气满仓?,本人仍满仓!
亚洲的人口最稠密的地区分布在亚洲A.东部、中
从南京到长治开车怎么走
什么时候去泰国最好玩
用2倍的放大镜放大一个△ABC,下列命题中正确
女兵的歌都有哪些
(1-2004\1)+(2-2004\1*2)+(3-2004\1*3)
单选题实行“耕者有其田”的土地制度是在A.大
微信怎么备份电话号码跟照片
从能的转化角度来看,摩擦起电的过程是把____
空间直角坐标系中如何求一点关于一条直线的对
单选题You were very impolite&nb
申请发明专利的步骤是什么,一般从申请到取得
单选题将新鲜的蔬菜、水果放在冰箱内冷藏可以
推荐资讯
怎样判断输入的字符串是否为回文?
单选题下列说法与改善空气质量关系最为密切的
美姿美容养身会所地址好找么,我有些事要过去
口算我最棒.216÷1000=50×800=0.083×100=1
明朝做官的薪水怎么算
广汽传祺gs4手动挡低配多少钱2017款国产车值
AI-CS3中,求隐藏图层与锁定图层几种情况的快
340是什么材质
祛斑掉珈后擦美容院配的生长因子......
关于深山的诗句
六安市裕安区固镇派出所地址好找么,我有些事
皮肤是由什么组成的?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?