免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 梁军
打印 上一主题 下一主题

[C] 逗号运算符和逗号表达式 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2010-07-02 10:59 |只看该作者

论坛徽章:
3
白羊座
日期:2013-11-05 12:59:14子鼠
日期:2014-01-29 14:14:50戌狗
日期:2014-02-11 16:21:45
22 [报告]
发表于 2010-07-02 12:16 |只看该作者
分号?那不成了写语句了么
不是什么地方都可以写语句的
pmerofc 发表于 2010-07-02 10:15



能举些必须用逗号的例子吗?除了上面的for语句之外

论坛徽章:
0
23 [报告]
发表于 2010-07-02 12:46 |只看该作者
回复 1# 梁军


    补充一下,我的认识:逗号表达式可以用于更美观的函数式#define

多行的那种不是都推荐用
define xxx(xxx) \
do{\
     expr1;\
     expr2;\
}while(0)


吗;

我倒是认为,那多句可以用逗号分隔,就不用恶心的do-while结构了

define xxx(xx) expr1, expr2

resutl = xxx(xx);

不知道这样是否合理呢,我认为是很好的

论坛徽章:
0
24 [报告]
发表于 2010-07-02 16:27 |只看该作者
不知道楼主想表达些什么!!

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
25 [报告]
发表于 2010-07-02 17:07 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
26 [报告]
发表于 2010-07-02 17:10 |只看该作者
这个宏展开的结果是
resutl = expr1, expr2;
resutl 将被赋值为expr1
这是最初所希望的么
pmerofc 发表于 2010-07-02 17:07


?不是expr2么?

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
27 [报告]
发表于 2010-07-02 17:13 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
28 [报告]
发表于 2010-07-02 17:18 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
29 [报告]
发表于 2010-07-02 17:22 |只看该作者
回复 28# pmerofc

哦,是啊,忘了。。。

论坛徽章:
3
白羊座
日期:2013-11-05 12:59:14子鼠
日期:2014-01-29 14:14:50戌狗
日期:2014-02-11 16:21:45
30 [报告]
发表于 2010-07-02 20:50 |只看该作者
本帖最后由 ahocat 于 2010-07-02 20:56 编辑
比如说,要求输入一字符序列,以'\n'表示输入结束但教科书上常见的蹩脚的写法却是
pmerofc 发表于 2010-07-02 17:13





   这也算不上有多少必要性吧?这样写不是也挺简洁吗?

  1.     char c;
  2.      while((c=getchar())!='\n'){
  3.           //处理c
  4.      }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP