undefined-behavior 相关问题

编译或执行打破语言规则的程序的不可预测的结果,编译器,解释器和运行时系统都不得强制执行。

从函数和未定义的行为返回本地部分初始化的结构

(通过部分初始化,我的意思是定义为未初始化,其中一个成员设置为某个有效值,但不是全部。并且本地我的意思是使用自动存储持续时间定义。这......

回答 2 投票 18

unique_ptr为具体类型

#包括 #包括 class Base {public:virtual void foo()= 0; }; class Derived:public Base {public:void foo()override {std :: cout <<“Derived”

回答 2 投票 0

这个memset-memcmp在struct变量上是否有效?

将结构体设置为某个值是否合法,然后将其与memcmp进行比较? struct S {// struct definition不相关,但它有bitfields}; struct S invalid_S; memset(&invalid_S,0xFF,...

回答 2 投票 0

通过一些错误示例了解memcpy()的行为

我正在尝试编写memcpy的实现。它的外观如下:void * ft_memcpy(void * s1,const void * s2,size_t n){size_t i; i = 0; while(i <n){((unsigned char *)......

回答 1 投票 -1

为什么printf(“%f”,0);给出未定义的行为?

语句printf(“%f \ n”,0.0f);打印0.然而,语句printf(“%f \ n”,0);打印随机值。我意识到我表现出某种不确定的行为,但我无法弄明白......

回答 10 投票 86

Clang 5.0和UBsan的指针加法和整数溢出?

我正在尝试理解我们最近在使用Clang 5.0和Undefined Behavior Sanitizer(UBsan)时清除的问题。我们有代码处理前向或后向的缓冲区。 ......

回答 2 投票 1

在v中使用va_list作为数组

像数组一样读取va_list而不是使用va_arg函数是安全且定义的行为吗? EX:void func(int string_count,...){va_start(valist,string_count); printf(“首先...

回答 3 投票 1

可以将不同的GCC方言联系在一起吗?

我知道原则上这可能是未定义的行为,但是为了处理大型项目,这里是我关于GCC的问题:假设我用gcc -std = c +编译一个转换单元...

回答 3 投票 18

增加顶级const指针时会发生什么? [重复]

当我试图找出顶级const和const_cast时,我写了一些代码如下。 int main(){// m是顶级const const int m = 10; //这是一个未定义的行为......

回答 2 投票 1

未在代码中调用的函数在运行时调用

如果从未在代码中调用过以下程序如何调用never_called? #包括 static void never_called(){std :: puts(“format hard disk drive!”); } static void(* ...

回答 2 投票 24

未定义的行为是否真的有助于现代编译器优化生成的代码?

现代编译器不够智能,无法同时生成快速安全的代码吗?看看下面的代码:std :: vector 一个(100); for(int i = 0; i <50; i ++){...

回答 4 投票 2

确保dynamic_cast不会导致未定义的行为C ++

到目前为止,我认为如果我的A类和B类没有任何关联,那么使用指针的dynamic_cast将无法返回nullptr。现在我已经读到这会导致未定义的行为.....

回答 1 投票 1

C ++最早的未定义行为可以表现出来的是什么?

我知道未定义的行为可能会导致任何事情,这使得任何包含UB的程序都可能毫无意义。我想知道是否有任何方法可以确定...中最早的一点...

回答 5 投票 10

这是C ++中的未定义行为从悬空指针调用函数

这里出现了一个问题,当一个指针变得晃来晃去时,问“为什么这个工作”。答案是它是UB,这意味着它可能起作用。我在一个教程中学到了:#include

回答 3 投票 1

for循环导致未定义的行为c

#包括 #包括 int main(){int i; int mult; int n; int ans; ans = mult * i; printf(“请输入您想要探索的倍数。”); ...

回答 3 投票 0

C unchecked函数返回未定义的行为

在c中,这种模式很常见:#include #包括 #包括 int init_ptr_or_return_err(int * p){srand(time(NULL)); //随机制作代码......

回答 2 投票 0

为什么在没有body的情况下调用纯虚方法不会导致链接器错误?

我今天遇到了相当奇怪的情况。在Interface构造函数中直接调用纯虚方法时,我得到一个未定义的引用错误。 class接口{public:virtual void ...

回答 1 投票 2

否定INT_MIN未定义的行为?

假设我有一个来自外部源的变量i:int i = get_i();假设我是INT_MIN和两个补码表示,是-i undefined?

回答 3 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.