【发布时间】:2014-07-25 12:11:47
【问题描述】:
我在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的地址?
谢谢。
【问题讨论】:
-
%s表示:获取该指针,将其解释为char *,并打印它指向的文本。%i表示:将int以 10 为基数打印。当您传递int *时,两者都是错误的。