当前位置: 代码迷 >> C语言 >> int *p;printf("%p",p);什么意思,输出什么格式?
  详细解决方案

int *p;printf("%p",p);什么意思,输出什么格式?

热度:1032   发布时间:2007-07-31 15:41:59.0
int *p;printf("%p",p);什么意思,输出什么格式?
int *p;printf("%p",p);什么意思,输出什么格式?谢谢。
搜索更多相关的解决方案: int  格式  意思  输出  

----------------解决方案--------------------------------------------------------

翻一翻指针部分吧
*P是指针变量,输出的是内存地址.
我也是刚学,不知道有没有错


----------------解决方案--------------------------------------------------------

在指针部分说的是地址


----------------解决方案--------------------------------------------------------
%p是指针的格式说明符
p---point
就象%d是整型数的格式说明符一样
----------------解决方案--------------------------------------------------------

我想知道得具体些,是输出内存地址?与占用地址的大小有关系吗?
#include <stdio.h>
#include <alloc.h>
#include <string.h>

int main(void)
{
char *str;

str = malloc(10);
strcpy(str, "Hello");
printf("String is %s\n Address is %p\n", str, str);
str = realloc(str, 20);
printf("String is %s\n New address is %p\n", str, str);
free(str);
return 0;
}
执行两次输出结果是相同的,执行两次应该分配不同的地址,输出结果却是相同的。


----------------解决方案--------------------------------------------------------
  相关解决方案