这是我的完整代码,每次运行时它都会打印随机负值,不知道出了什么问题。使用Ubuntu来运行和“ gcc -Wall -Wextra test.c”
#include <stdio.h>
int main () {
unsigned int x = 10;
unsigned int y = 16;
unsigned int p = x + y;
printf("%d\n", &p);
return 0;
}
您正在传递p
的地址。您需要传递值。
printf("%d\n", p);
有了它,您的代码正在打印p
的地址,无论发生什么情况。另外,由于您使用的是unsigned int
,因此可能要使用%d插入的%u格式化程序。