Tag: undefined 行为

C ++程序员应该知道的所有常见的未定义行为是什么?

C ++程序员应该知道的所有常见的未定义行为是什么? 比如说: a[i] = i++;

什么是严格的锯齿规则?

在询问C语言中常见的不确定行为时 ,比起我提到严格的别名规则,灵魂更加开明。 他们在说什么?

未定义,未指定和实现定义的行为

C和C ++中未定义的,未指定的和实现定义的行为有什么区别?

初始化是否需要左值到右值的转换? 是'int x = x;`UB?

C ++标准在第3.3.2节“声明点”中包含了一个“令人惊讶的”名称查找的半名示例: int x = x; 这初始化x本身,这是一个原始类型是未初始化 ,因此有一个不确定的值(假设它是一个自动变量)。 这实际上是不确定的行为? 根据4.1“左值到右值的转换”,对未初始化的值执行左值到右值的转换是未定义的行为。 右边的x是否经历了这种转换? 如果是这样,这个例子实际上是否有未定义的行为?