不知道为什么输出是 6? 在给定的 C 程序中,我每次都得到 6 的输出,所以我不能说它正在打印垃圾值
#include<stdio.h>
void main()
{
int const* a=2;
printf("%d\n",++(a));
}
我无法确定为什么这个 C 程序会给我这个答案。
最佳答案
当你增加一个指针时,它实际上增加了它所指向的类型的大小。
在这里您初始化了一个指向值 2
的指针。然后,您增加指针,通过上面的操作,指针在您的系统上增加 sizeof(int)
或 4
。然后打印出这个值 - 6。
关于c - 我无法确定为什么这个 C 程序会给我这个答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25357883/