问题标签 [sequence-points]

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.

0 投票
2 回答
372 浏览

c - 是 i=f(); 当 f 修改 i 时定义?

相关问题:赋值运算符不是序列点的任何充分理由?

comp.lang.c FAQ我推断下面的程序是未定义的。奇怪的是,它只提到调用f作为一个序列点,在参数的计算和控制转移之间f。从f返回到调用表达式的控制转移未列为序列点。

真的是未定义吗?

作为我对许多问题的补充,我在静态分析的背景下对此感兴趣。我不是自己写的,我只是想知道我是否应该在其他人编写的程序中警告它。

0 投票
2 回答
2130 浏览

c - strcmp 的段错误

我通过以下方式使用 strcmp

  1. 传递 char[] 数组名
  2. 将指针传递给字符串文字,但第二个导致段错误。尽管我已经确认指针指向正确的字符串文字,但我对为什么会出现段错误感到困惑。这是代码:-

    /li>

我将它保存为 str.c ,当我编译它时,首先我得到以下警告:

最后运行它,给出如下所示的段错误

0 投票
2 回答
1299 浏览

c++ - Is the comma in a variable list a sequence point?

In the following type of code is there a sequence point between each variable construction, or is the result undefined?

I wasn't able to find in the standard a specific reference to a sequence point here. Does that mean it is undefined, or just that I failed in my search? The completion of an expression is a sequence point, but does the above initialization also count?

0 投票
5 回答
202 浏览

c++ - Placement-new 是否引入了序列点?

考虑以下代码行:

如果构造函数T()抛出异常,是否p保证已经自增?

0 投票
2 回答
226 浏览

c++ - 这段代码是否定义良好?

我怀疑根据 C++ 标准(假设 C++0x),以下函数链接会导致未指定的序列。只需要确认,如果有人可以提供解释,我将不胜感激。

*编辑:删除函数的 __fastcall 说明符(不需要/与问题相关)。

0 投票
6 回答
518 浏览

c - 这些分配之间是否存在序列点?

以下代码中的两个赋值之间是否存在序列点:

0 投票
1 回答
894 浏览

c++ - 将二维点序列作为参数传递给 cvFitLine

我有以下代码片段:

但此代码引发异常:cvFitLine 中不支持的格式或格式组合(输入序列必须由 2d 点或 3d 点组成) 我的代码哪里有问题?(我是 OpenCV 的新手)

0 投票
7 回答
18162 浏览

c# - 前缀 (++x) 和后缀 (x++) 操作如何工作?

有人能告诉我前缀/后缀运算符是如何工作的吗?我一直在网上寻找很多,但没有找到任何东西。

据我所知,prefex 首先递增,然后执行操作,然后分配。
Postfix 会先执行操作,然后分配,然后递增。

但是我的代码有点麻烦:

但是,当我这样做时:

我不确定为什么这些操作会有所不同。我有两个问题:

  • 你能解释一下区别吗?

  • 这如何应用于其他运算符前缀?

0 投票
2 回答
225 浏览

c++ - 参数评估与链式方法是否有保证的发生前关系?

我想用以下代码修剪 C++ 中的字符串:

标准是否允许在执行第 1 行之前计算第 6 行,以便最终调用第 5 行时,参数可能不再有效?

0 投票
3 回答
292 浏览

c - 结构成员初始化之间是否存在序列点?

结构成员初始化表达式之间是否存在序列点?

例如,是否明确定义下面的代码将始终打印“a,b”?