【发布时间】:2013-09-27 15:44:08
【问题描述】:
谁能澄清一下?
char str[1];
strcpy(str, "HHHHHHHHHHHH");
在这里我声明了一个大小为 1 的 char 数组,但程序不会崩溃,直到我输入超过 12 个字符并且我只有一个大小为 1 的数组。为什么?
【问题讨论】:
-
恭喜你找到了 UB !
-
这是related post。情况并不完全相同,但对发生的事情的解释相同。
-
@POW,用这个缩写是为了让人问“UB的定义是什么”?这很卑鄙。我喜欢它。
-
@Glove 选一本好书
-
我们几乎每天都有这类问题,我想。提问前请先搜索网站。 C no out of bounds error 的可能重复项