一个数字中逗号的含义是什么?

4
可能是重复问题:
C++ Comma运算符 这可能是一个微不足道的问题,但我不知道答案。这个问题困扰了我一下午。
我刚刚编写了一个将RGB转换为YUV的函数。没有什么特别的,但我错误地在数字中使用逗号(,)而不是点号。它编译通过,但结果并不是我期望的。例如,输出“-3713796”而不是0到255的范围内的数值。
(0,615*(double) 61) - (0,51498*(double) 61) - (0,10001*(double) 61)

那么这意味着什么?
如果不是编译错误,它可能对某些事情有用,但是什么呢?

附:我正在使用带有Qt的C++。

2个回答

7

您意外使用了逗号运算符(comma operator)。它会计算第一个操作数并丢弃结果,然后计算第二个操作数并返回它的值和类型。

根据我的经验,它最常用于循环语句中。其他用法请参见C逗号运算符的用法


可能就这样了,谢谢! - Matthieu Riegler

1

这是逗号运算符,它会评估每个操作数并返回最右边的操作数。在这种情况下,它先评估了0,然后是615*(double) 61,并得到了该乘积的值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接