Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
接近恒定时间旋转,不违反标准
我花了很长时间试图想出一个不违反 C C 标准的恒定时间旋转 问题是边缘 角落情况 其中操作在算法中调用并且这些算法无法更改 例如 以下内容来自Crypto 并执行下面的测试工具海湾合作委员会乌桑 i e g fsanitize undef
c
bitwiseoperators
undefinedbehavior
constanttime
如何根据 C++ 标准访问对象表示?
如何访问对象表示 为了回答这个问题 我将其分为两个问题 1 如何获得对象表示的指针 根据标准 我看不到任何方法来获取指向对象表示 人们经常建议这样实现 some type obj const char rep reinterpret cas
c
pointers
object
languagelawyer
undefinedbehavior
当我在 C++ 中打印未初始化的变量时会发生什么? [复制]
这个问题在这里已经有答案了 为什么打印这个32767 或其他一些随机数 什么是std cout印刷 为什么不是NULL or 0 int main int a std cout lt lt a 这是因为在 C 中具有自动存储期限的变量不会自
c
initialization
undefinedbehavior
为什么 printf("%f",0);给出未定义的行为?
该声明 printf f n 0 0f 打印 0 然而 该声明 printf f n 0 打印随机值 我意识到我表现出了某种未定义的行为 但我无法具体弄清楚为什么 所有位均为 0 的浮点值仍然有效float值为 0 float and in
c
printf
implicitconversion
undefinedbehavior
在 T 和 UnsafeCell
之间转换是否安全且定义的行为?
A 最近的问题正在寻找构建自我参照结构的能力 在讨论该问题的可能答案时 一个可能的答案涉及使用UnsafeCell用于内部可变性 然后通过 丢弃 可变性transmute 这是这种想法的实际应用的一个小例子 我对这个例子本身并不很感兴趣 但
Rust
undefinedbehavior
unsafe
限制未定义行为造成的混乱?
据我从阅读中了解到 未定义行为是编译器在编译时留下几个不同的替代方案的结果 然而 这是否意味着如果遵循严格的编码实践 例如将每个赋值和每个相等放在单独的语句中 正确的调试和注释 那么在查找未定义的来源时就不应该造成重大问题 行为 此外 对于
c
languageagnostic
undefinedbehavior
C 编程#define? [复制]
这个问题在这里已经有答案了 可能的重复 谁能解释这些未定义的行为 i i i i i 等等 include
c
macros
undefinedbehavior
如果使用 cout.rdbuf() 切换缓冲区并且从不将其设置回来,会出现什么问题?
作者提出这段代码在标题之下A bus error on my platform include
c
fstream
undefinedbehavior
streambuf
C++ 中的越界和未定义的行为
我知道在 C 中 超出缓冲区范围的访问是未定义的行为 这是来自 cppreference 的示例 int table 4 bool exists in table int v return true in one of the first
c
languagelawyer
undefinedbehavior
如果 getc() 通过 SIGINT 退出,则 getc() 后面的未定义行为是否会改变程序行为
根据 未定义行为 的现代解释 编译器有权假设不会发生导致未定义行为 不可避免 的事件链 并且可以消除仅适用于代码将要执行的情况的代码未定义的行为 这可能会导致未定义行为的影响及时倒退 并使本来可以观察到的行为无效 另一方面 如果除非程序终止
c
languagelawyer
undefinedbehavior
打印字符时会发生哪些积分促销?
我最近读到了 unsigned char x 1 printf u x 调用未定义的行为 因为由于格式说明符 u printf 需要一个无符号整数 但我仍然想了解这个例子中发生了什么 我认为积分提升规则适用于表达式printf u x 和代
c
printf
undefinedbehavior
variadicfunctions
integerpromotion
当 printf 的相应参数不是短/字符时,使用 h 或 hh 长度修饰符是否非法?
The printf函数族提供了一系列长度修饰符 其中两个是hh 表示一个signed char or unsigned char论点提升为int and h 表示一个signed short or unsigned short论点提升为i
c
printf
languagelawyer
undefinedbehavior
short
用逗号进行相互依赖的初始化?
以下是完美定义的 int x 42 y x 即严格等同于 int x 42 int y x 编辑 问题不是关于风格 我知道这是错误的 问题是 理论 正确答案是 int x 42 y x and int x 42 int y x 通常是等价的
c
C11
initialization
languagelawyer
undefinedbehavior
为什么 PHP 要这样选择随机值?
所以 我正在测试一些东西并注意到当我运行此代码时 arr str split ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 1 print r implode
php
Arrays
Random
undefinedbehavior
未定义的行为,或者:Swift 有序列点吗?
在 C C 中 第二条语句 int i 0 int j i i i 调用两者 未指定的行为 因为操作数的求值顺序 未指定 并且 未定义的行为 因为对同一个对象的副作用i彼此之间是无序的 参见示例 为什么这些构造 使用 是未定义的行为 未定义
swift
undefinedbehavior
sequencepoints
有没有办法区分 GUID 和随机数?
在调试模糊的代码缺陷时 能够将 GUID 与随机数据区分开来非常有用 在 Windows 上 生成的每个 GUID 都是版本 4 因此它的第三部分的前半字节为 4 因此 如果 16 字节序列违反了该规则 那么它就不是版本 4 GUID 例如
debugging
Random
GUID
undefinedbehavior
std::launder 如何影响容器?
考虑以下固定大小向量的简化且不完整的实现 template
c
undefinedbehavior
C17
关于未定义的行为
一般来说 UB被认为是必须避免的东西 当前的C标准本身在附录J中列出了相当多的例子 然而 在某些情况下 我认为除了牺牲可移植性之外 利用 UB 没有任何害处 考虑以下定义 int a INT MAX 1 对该表达式求值可得出 UB 然而 如
c
undefinedbehavior
C++ 从数组定义行为中间的指针进行负索引?
include
c
Arrays
string
Indexing
undefinedbehavior
为什么增强的 GCC 6 优化器会破坏实际的 C++ 代码?
GCC 6 有一个新的优化器功能 假设this始终不为空并基于此进行优化 值范围传播现在假设 C 成员函数的 this 指针非空 这消除了常见的空指针检查但也破坏了一些不合格的代码库 例如 Qt 5 Chromium KDevelop 作为
c
gcc
compileroptimization
undefinedbehavior
«
1 ...
6
7
8
9
10
11
12
»