【发布时间】:2015-04-01 22:38:02
【问题描述】:
当我在此链接上找到代码时,我正在网上阅读有关悬空指针的信息:
我把它贴在这里:
#include <stdio.h>
void f(int *j)
{
(*j)++;
}
int main()
{
int i = 20;
int *p = &i;
f(p);
printf("i = %d\n", i);
return 0;
}
这是一个悬空指针,哪个指针悬空?该代码对我来说似乎有效。它应该打印“i = 21”并返回。我没有看到任何悬空指针。
【问题讨论】:
-
嗯...您是否执行了代码以查看它是否确实如此?
-
这段代码中没有悬空指针。
-
我建议你不要再在billioncodes.com网站上阅读任何内容,那里似乎没有任何有意义的内容。
-
你可能不应该相信那些试图让
in成为语言中关键字的代码。可能会发生,但又过了 30 年。 -
呃,我刚刚看了那个网站。这完全是废话,用胡言乱语写成,暗示了不良做法和滥用术语。
标签: c dangling-pointer