我在C
中写了以下内容,并希望检索变量x
的地址:
int x = 10;
int *address_of_x = &x;
printf("The address of x is: %s \n", address_of_x);
printf("The value of x is: %i \n", *address_of_x);
在这种情况下,我放%s
的地方,我没有得到任何价值。如果我将其更改为%i
,则会获得integer
值。我期待地址就像是混合了数字和字母。那么,%
之后的字母是否在这里很重要,这似乎呢?
在这种情况下,我应该怎么做才能获得变量x
的地址?
感谢。
答案 0 :(得分:2)
尝试改为:
printf("The address of x is: %p \n", (void*)address_of_x);
%p这里代表指针,对于其中一些标识符you can look here
即。 %x将地址显示为漂亮的十六进制数
答案 1 :(得分:1)
printf("The address of x is: %p \n", &x);