相关疑难解决方法(0)

未定义的未定义行为如何?

我不确定我是否完全理解未定义行为可能危及程序的程度.

假设我有这段代码:

#include <stdio.h>

int main()
{
    int v = 0;
    scanf("%d", &v);
    if (v != 0)
    {
        int *p;
        *p = v;  // Oops
    }
    return v;
}
Run Code Online (Sandbox Code Playgroud)

这个程序的行为是否针对v非零的情况而定义,或者即使v为零也未定义?

c undefined-behavior language-lawyer

34
推荐指数
3
解决办法
1759
查看次数

标签 统计

c ×1

language-lawyer ×1

undefined-behavior ×1