正文
c语言输出函数遇到自增 c语言自定义函数输出
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
C语言自增问题
第一段程序:
int
a=1,
c=1;
a++;
//此时a=2
++c;
//此时c=2c语言输出函数遇到自增;
所以输出事两个2
第二段程序
int
a=1,
c=1;
printf("%d
%d",a++,++c);
这个++c是先c=c+1c语言输出函数遇到自增,然后输出c语言输出函数遇到自增,这时候输出2
而++a是先输出c语言输出函数遇到自增,然后再a=a+1;这时候输出1
如果之后你再加一条:
printf("%d
%d",a,c);
结果就是2个2了
C语言中函数关于自增自减i的问题。求解决啊。。
第一段代码:
++i是先增加i的值,然后使用。
p=f(i,++i); 是先执行++i,后进行函数调用。因为执行了++i以后,i的值已经变成了3,
所以相当于p=f(3,3);
你可以在函数f里面把a和b的值打印出来,你会发现a和b都是3.
第二段代码:
i++是先使用i的值,然后把i的值加1.
所以相当于先执行p=f(2,2);
执行之后,把i的值变成3.答案应该是0.
我怀疑你们老师的课件写错了,建议你去问问他。
c语言的自增自减问题
计算:从右往左,并输出到“缓冲区”。
1、缓冲区是一堆栈
2、第一步:处理后面的“i--”。8进入缓冲区,i=7。缓冲区:8 -(指针)
第二步:处理“i++”。7进入缓冲区,i=8。缓冲区:7 8-
第三步:处理”--i“。8进入缓冲区,i=7.缓冲区:8 7 8
第四步:处理“++i” 先自增1,然后8进入缓冲区,i=8 .缓冲区: 8 8 7 8
3、输出缓冲区数据(栈规则):8 8 7 8
另外自增 、自减 、还可能和编译器有关系 。
扩展资料:
后缀表达式 2级
postfix-expression [ expression ],数组下标运算。
postfix-expression ( argument-expression-list),函数调用,括号内的参数可选。
postfix-expression . identifier,成员访问,
postfix-expression - identifier,成员访问,-号之前应为指针。
postfix-expression ++,后缀自增
postfix-expression --,后缀自减
( type-name ) { initializer-list }
( type-name ) { initializer-list , } 复合初始化,C99后新增。
参考资料:百度百科-C语言运算符
C语言自增自减的输出问题
printf("%d\n%d\n%d\n%d\n%d\n%d\n%d\n",i,++i,--i,++i,++i,-i++,-i--);
右边参数集i,++i,--i,++i,++i,-i++,-i-- 是从最右边开始入栈c语言输出函数遇到自增的c语言输出函数遇到自增,也就是先执行最右边的表达式。
-i-- 表达式的值为-i,也就是-8,然后i--使得i的值更新为7
-i++ 此时i的值为7,表达式的值为-i,也就是-7,然后执行i++使得i更新为8
++i 此时i的值为8,先执行++i使得i值变为9,表达式的值为自加后i的值也就是9
++i 此时i的值为9,先执行++i使得i值变为10,表达式的值为自加后i的值也就是10
--i 此时i的值为10,先执行--i使得i值变为9,表达式的值为自加后i的值也就是9
++i 此时i的值为9,先执行++i使得i值变为10,表达式的值为自加后i的值也就是10
i 此时i的值为10
原输出语句应该输出10 10 9 10 9 -7 -8
c语言输出函数遇到自增我在C++Builder2010下测试是如此。
一般的,大部分C语言编译器处理函数中参数入栈都是从右往左的。c语言输出函数遇到自增你说的VC6下的测试结果,倒数第二个人是-8,这样的情况我也觉得奇怪。
而在VC2008下测试的结果则是:10 10 10 10 10 -7 -8
也许有编译配置参数可以设置,来改变编译效果。
C语言的自增自减运算,如何理清。我老是混淆了。
自增自减分先置和后置c语言输出函数遇到自增,放在前面的c语言输出函数遇到自增,先自增或自减c语言输出函数遇到自增了在用这个数,放在后面的先用这个数了,自增或自减。例如int
i=5;
printf("%d",
++i);i先自增在输出,即结果为6c语言输出函数遇到自增;改为printf("%d",
i++)则先输出结果5,然后i再自增1;
关于c语言打印顺序和自增自减符号的问题
这里只解释第一个printf语句,其他与此相同
其中的输出项为:++i,--i,i++,i--,-i++,-i--
一般来说,printf函数中的输出项表达式是从右向左开始计算的,但输出顺序与排列顺序相同。因此,结果逆序看:-i--,后自减,先输出-8,i=7;-i++,输出-7,i自增为8;i--,i++与前两项相同;++i,--i,先自减i为7,输出7,再自增i=8,输出8
c语言输出函数遇到自增的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言自定义函数输出、c语言输出函数遇到自增的信息别忘了在本站进行查找喔。