问题标签 [comma-operator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 这个逗号在 for 循环的 *test* 部分有什么作用?
我的编译器说error: expression has no effect
,这听起来很对。那么,这里将使用这两个比较中的哪一个?我的猜测是i < c
被忽略了,但我想得到其他人的确认,因为我还不能运行这段代码......
c++ - `operator<<` 在 C++ 中逗号分隔值
以下语法在 OpenCV 中有效
怎么可能?哪个运算符重载了?这个表达的意义是什么?逗号运算符现在可以重载C++
吗?
c - 编译器如何知道函数调用中的逗号不是逗号运算符?
考虑函数调用(调用int sum(int, int)
)
编译器如何确定,
函数调用sum(int, int)
中使用的不是逗号运算符?
注意:我不想在函数调用中实际使用逗号运算符。我只是想知道编译器如何知道它不是逗号运算符。
c - C中“,”运算符的行为不明确
在给定的代码中,我发现以下序列,
我不明白那是什么意思。
数据元素是否接收第一个或第二个元素或其他内容?
更新:
我在某处读到这种行为是这样的,
如果我会这样写:
如果(数据 = POC_P_Status,TE_OK){ ... }
如果 TE_OK 为真,则 if 子句为真。
你是什么意思?
c++ - 逗号运算符的正确用法是什么?
我看到了这段代码:
为什么要这么做?为什么不只是:
c - 为什么会有这样的C程序输出
我试图运行以下代码并遇到了一些结果。有人可以解释一下:
上面的代码将输出打印为12
. 如果我尝试运行以下代码:
这将输出打印为14
,但使用以下代码将输出打印为12
:
c++ - c ++中的逗号运算符不计算第二个表达式
我写了以下代码:
我希望它打印出来:
编译g++ -O0 test.cpp -o test.out
并运行结果:
为什么省略了对 v 的调用?(这不能用于优化,因为我添加了标志-O0
)
c++ - 返回括号(10、20、30、40)之间的值列表?
我在Visual Studio 2012中使用C++(不是 C++/CLI)。
我不明白为什么这段代码有效,我原以为它会在编译时失败,但它甚至不会在运行时失败:
我错误地生成了这段代码,不是故意的,我在运行单元测试时注意到了这个错误。我很惊讶它有效。当我运行它时,它返回40,即列表中的最后一个数字。
有人可以解释一下这种语法的含义以及它为什么有效吗?
c++ - 带有c ++ 11 for循环的逗号运算符
起初我想尝试是否允许这样做:
这没有用,但由于尺寸限制,我期待它。
但是,我很惊讶这也不起作用:
逗号运算符不是要在转到右侧之前解决其左侧的所有副作用吗?
c - 使用带有 printf 的双括号时出现分段错误
为什么当我将双括号与printf
. 即printf(( ));
?