小编bha*_*vin的帖子

为什么带有\n的printf会产生分段错误?

char *p = NULL;
printf("%s", p); 
Run Code Online (Sandbox Code Playgroud)

为什么上面没有导致分段错误?但

char *p = NULL;
printf("%s\n",p); 
Run Code Online (Sandbox Code Playgroud)

呢?

添加我知道它是以这种方式使用的未定义行为,但仍然想知道为什么它用\n生成6次中的6次,而不是没有它.

我在面试中被问到这个问题,我给出了相同的答案,因为它的未定义的行为,但他们的期望是给出理由,我不知道还能添加什么.有什么想法吗?

c segmentation-fault

0
推荐指数
1
解决办法
132
查看次数

标签 统计

c ×1

segmentation-fault ×1