C逗号运算符的使用

C逗号运算符的使用

您可以看到它在for循环语句中使用,但是它在任何地方都是合法的语法。你在其他地方发现了什么用途,如果有的话?



桃花长相依
浏览 606回答 3
3回答

繁星淼淼

我认为通常C的逗号不是一个很好的使用风格,因为它很容易被忽略-要么是其他人试图阅读/理解/修复您的代码,要么是您自己一个月之后。当然,在变量声明和for循环之外,它是惯用的。例如,您可以使用它将多个语句打包到三元操作符(?:)中,Ala:int x = some_bool ? printf("WTF"), 5 : fprintf(stderr, "No, really, WTF"), 117;但是我的神,为什么?!?(我在实际代码中见过这样的用法,但遗憾的是,没有访问它的权限)

慕桂英3389331

我看到它在宏中使用,在宏中,宏假装是一个函数,并希望返回值,但需要先做一些其他工作。它总是丑陋的,经常看起来像一个危险的黑客。简化示例:#define SomeMacro(A) ( DoWork(A), Permute(A) )这里B=SomeMacro(A)“返回”Permute(A)的结果并将其分配给“B”。
打开App,查看更多内容
随时随地看视频慕课网APP