Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
如果 C 编译器无法证明缺少 UB,为什么要禁止优化?
如果 C 程序有未定义的行为 任何事情都可能发生 因此编译器可能会假设任何给定的程序不包含 UB 因此 假设我们的程序包含以下内容 x 5 Do something else without x in the meantime x 7 当然
作业的右侧是否总是在作业之前评估?
这是一个代码片段 x x 1 len x print x 1 0 这是明确定义的吗 也就是说 可以x 1 1 反而 因为我记得 C 98 中有一个等效程序 如果我们使用std map 具有未定义的行为 使用VS编译器和G 编译时 程序的输出
python
python27
undefinedbehavior
operatorprecedence
何时会出现 UB,因为 ADL 在实例化时未找到最佳重载匹配?
当函数体被实例化时 依赖函数调用重载解析应该通过ADL在关联的命名空间中找到最佳匹配 否则行为是未定义的 临时候选人 1 https timsong cpp github io cppwp n4861 temp dep candidate
c
templates
languagelawyer
undefinedbehavior
namelookup
如果 a 未初始化,a^a 或 a-a 是未定义行为吗?
考虑这个程序 include
c
undefinedbehavior
未定义行为 (UB) 以实现余地为条件的程序是具有无条件 UB 的程序吗?
在回答中 在 C 20 中使用 std bit cast 创建闭包 lambda 对象是否有效 https stackoverflow com questions 68828838 is it valid to create closure
c
languagelawyer
undefinedbehavior
使用 char * 访问 int 是否可能具有未定义的行为?
下面用于测试字节顺序的代码预计具有实现定义的行为 int is little endian void int x 1 char p char x return p 1 但它是否有可能在特意设计的架构上具有未定义的行为 例如 表示的第一个字节
c
casting
languagelawyer
undefinedbehavior
无符号整数增量会导致未定义的已定义行为吗?
读完后64 位上的 32 位无符号乘法会导致未定义的行为吗 https stackoverflow com q 27001604 1806289在 StackOverflow 上的问题中 我开始思考小型无符号类型上的典型算术运算是否会导致根
c
languagelawyer
C99
undefinedbehavior
是否有符号到无符号的转换以及返回,定义了整数的行为?
include
c
C11
Integer
typeconversion
undefinedbehavior
iOS应用程序不会死,退出后写入控制台并播放声音
我的应用程序有某种僵尸问题 不是 NSZombie 问题 就像是死而复生的问题 我首先注意到 在调试会话之后 当我去跑步时 iPhone 上的音乐会每隔约 7 分钟暂停一次 当我解锁设备时 应用程序名称会在状态栏中闪烁红色 就好像它正在运行
ios
cocos2diphone
coreaudio
undefinedbehavior
C11 中是否有定义的方法来进行指针减法?
有没有一种方法可以在 C11 中将一个指针与另一个指针相减 并始终定义结果 该标准规定 如果结果不能表示为 ptrdiff t 类型 则行为未定义 我对依赖于静态断言的解决方案持开放态度 该解决方案有望在现代通用 32 或 64 位环境中传
c
pointers
undefinedbehavior
C11
pointerarithmetic
reinterpret_cast bug 还是 UB? [复制]
这个问题在这里已经有答案了 考虑以下代码 include
c
languagelawyer
undefinedbehavior
reinterpretcast
将 xvalues 转换为 lvalues 以传递给函数是否定义良好?
最近我发现 https stackoverflow com q 26793072 1000282有时能够改变右值暂时地转换成左值可以是 对我有用 我一直在使用以下工具 include
c
C11
languagelawyer
undefinedbehavior
c14
C 中指针比较如何工作?可以比较不指向同一数组的指针吗?
在 K R C 编程语言第二版 第 5 章中 我读到了以下内容 首先 在某些情况下可以比较指针 如果p and q指向同一个数组的成员 那么关系如下 lt gt 等工作正常 这似乎意味着只能比较指向同一数组的指针 但是当我尝试这段代码时 c
c
pointers
heapmemory
undefinedbehavior
memorylayout
您遇到的 C 语言常见的未定义/未指定行为有哪些? [关闭]
Closed 这个问题需要多问focused help closed questions 目前不接受答案 C 语言中未指定行为的一个示例是函数参数的求值顺序 它可能是从左到右或从右到左 你只是不知道 这会影响如何foo c c or foo
c
languagelawyer
undefinedbehavior
unspecifiedbehavior
可以使用初始或终端 malloc 缓冲区吗?
假设我做了如下事情 size t length 1000 char p malloc length 然后我想循环遍历元素 所以最基本的是 for size t i 0 i lt length i p i or p length 1 i 但也
c
forloop
pointers
malloc
undefinedbehavior
`y = x = x + 1;` 是未定义的行为吗?
这段代码是 y x x 1 C 中未定义的行为 回答你的问题 No 会发生什么这将会发生 int x 1 ASSUME THIS IS SO y x x 1 Results y 2 x 2 它是如何编译的与以下相同 x 1 y x 为什么这
c
undefinedbehavior
*&++i 是否会导致 C++03 中的未定义行为?
In 另一个答案 https stackoverflow com a 17400329 1505939据说在 C 11 之前 其中i is an int 然后使用表达式 i 导致未定义的行为 这是真的 关于另一个答案 评论中有一些讨论 但似
c
languagelawyer
undefinedbehavior
c03
sequencepoints
int a=1, b=a++; 是否调用未定义的行为?
Does int a 1 b a 调用未定义的行为 初始化之间没有序列点介入a及其在初始化程序中的访问和修改b 但据我所知 初始化不是对象的 修改 指定初始值设定项来给出对象的 初始值 根据 6 7 8 初始化 第 8 段 初始化器指定存储
c
languagelawyer
undefinedbehavior
sequencepoints
恒定值变化
假设我有一个结构体定义 struct thing thing x int z thing x this z 0 void foo const this gt x gt z 请注意 我创建了一个指向我自己的可变指针 邪恶的笑 然后我可以像这样
c
constants
undefinedbehavior
C++23 多线程应用程序中的 std::start_lifetime_as 和 UB
假设X and Y是适合这种用途的类型 是否可以使用 UBstd start lifetime as
c
languagelawyer
undefinedbehavior
objectlifetime
c23
«
1
2
3
4
5
6
...11
»