鱼C论坛

 找回密码
 立即注册
查看: 4514|回复: 6

逗号运算符的问题

[复制链接]
发表于 2013-3-9 09:20:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. 逗号表达式的最终结果不是表达式最后一个的值吗
  2. 但这个程序怎么是表达式1的?

  3. # include <stdio.h>

  4. int main(void)
  5. {
  6.         int y;

  7.         y = (2+3), (3+4);

  8.         printf("y = %d\n", y);

  9.         return 0;
  10. }


  11. /*
  12. 在VC++6.0中输出结果:
  13. ---------------------
  14. y = 5
  15. Press any key to continue
  16. ---------------------
  17. */
复制代码


小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-3-9 09:33:01 | 显示全部楼层
y = (2+3), (3+4);等价于
(y = (2+3)), (3+4);
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-3-9 09:43:36 | 显示全部楼层
本帖最后由 名人堂_丿_帅 于 2013-3-9 09:48 编辑

请问,怎么写才能得到最后一个表达式的值?
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-3-9 09:48:29 | 显示全部楼层
名人堂_丿_帅 发表于 2013-3-9 09:43
请问,怎么写才能得到最后一个表达式的值?

明白了,刚才我写了一个赋值表达式,对不
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-3-9 09:53:28 | 显示全部楼层
名人堂_丿_帅 发表于 2013-3-9 09:43
请问,怎么写才能得到最后一个表达式的值?

y =( (2+3), (3+4));
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-3-9 09:58:53 | 显示全部楼层
仰望天上的光 发表于 2013-3-9 09:53
y =( (2+3), (3+4));

明白了,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-3-9 10:00:36 | 显示全部楼层
y = (2+3), (3+4); 整个表达式的值是后一个表达式的值,没错,但前一个表达式是一个赋值表达式,已经对y做了手脚的,如果要是y的值是12,可以写成y=(2+3,3+4);就行了。
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-7 04:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表