社区
C语言
帖子详情
连加时候出现的问题?
zalyer
2003-01-16 11:22:39
一道课后题目:
main()
{ int x,y,z;
x=y=1;
z=x++-1;
printf(“%d,%d\n”,x,z);
z+=-x+++++y; /*加号中间没有空格*/
printf(“%d,%d\n”,x,z);
}
但是在我注释的地方编译过不去。
于是改成 z+=-x++ + ++y; 结果是:3,0
但如果写成z+=-x+ + +++y; 结果就是:2,0
我是在tc2中编译的。请问为什么?
...全文
38
1
打赏
收藏
连加时候出现的问题?
一道课后题目: main() { int x,y,z; x=y=1; z=x++-1; printf(“%d,%d\n”,x,z); z+=-x+++++y; /*加号中间没有空格*/ printf(“%d,%d\n”,x,z); } 但是在我注释的地方编译过不去。 于是改成 z+=-x++ + ++y; 结果是:3,0 但如果写成z+=-x+ + +++y; 结果就是:2,0 我是在tc2中编译的。请问为什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
WaterSpinach
2003-01-16
打赏
举报
回复
编译器编译这种连着的符号时有一个原则:在正确的前提下尽可能的长
所以
在 z=x++ - 1时 // x = 2 , z = 1
后面为z+=-x++ + ++y 时// 则 x=3, z = z + (-3) + 2 , 所以 z 为 0
后面为z+=-x+ + +++y 时// 则 x =2, +++y 按上述规则解释为++(+y),即
最后一个+号相当于正负号,所以 z = -2 + 2 , 所以 z 也为 0
你必须知道的495个C语言
问题
1.5 这样的声明有什么
问题
?char*p1,p2;我在使用p2的时候报错了。 1.6 我想声明一个指针,并为它分配一些空间,但却不行。这样的代码有什么
问题
?char*p;*p=malloc(10); 声明风格 1.7 怎样声明和定义全局变量...
请解释一下为什么会
出现
浮动和什么时候需要清除浮动?清除浮动的方式?
浮动float最开始
出现
的意义是为了让文字环绕图片而已,但人们发现,如果想要三个块级元素并排显示,都给它们加个float来得会比较方便。什么时候清除浮动? 如果想要实现三个块级元素并排显示,期望效果如下图所示:...
为什么会
出现
浮动?什么时候需要清除浮动?清除浮动的方式有哪些?
浮动带来的
问题
: 父元素的高度无法被撑开,影响与父元素同级的元素 与浮动元素同级的非浮动元素(内联元素)会跟随其后 若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构 清除浮动的...
C语言到底什么时候使用“空格”?初学者的常见
问题
到底怎么解决?
c语言到底什么时候空格?
APP 测试,什么时候需要收集日志?怎么收集日志?
答:在
出现
操作异常时,查看并定位具体
问题
,当
出现
crash(崩溃)和ANR(Application Not Responding:无响应)时去看日志,协助开发发现 bug。 备注:发生 ANR 可以使用三种途径记录报错信息,分别是logcat日志...
C语言
70,037
社区成员
243,243
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章