这是我的代码,我仍然继续看错了,我是初学者,我想学习:
#include<stdio.h>
int main()
{
int a;
printf("Input: ");
scanf("%d", &a);
printf("\n%d", &a);
a+=2;
printf("\n%d", &a);
a+=4;
printf("\n%d", &a);
a+=2;
printf("\n%d", &a);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
Input: 10
-1078169908
-1078169908
-1078169908
-1078169908
Run Code Online (Sandbox Code Playgroud)
你并不需要通过地址a来printf()打印的内容.
更改
printf("\n%d", &a);
Run Code Online (Sandbox Code Playgroud)
至
printf("\n%d", a);
Run Code Online (Sandbox Code Playgroud)
此外,您应该检查的返回值scanf().如果scanf()失败,您将通过访问一个统一的局部变量来调用未定义的行为.
也就是说,int main()至少应该int main(void)符合标准.