char str[]=100 char *p=str,,为什么sizeof(p)=4?????

Ge 2003-09-28 05:41:25
还有
void *p=malloc(100),,
sizeof(p)也是4,,为什么,
...全文
126 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bluebohe 2003-09-28
p是指针,指针是地址,地址是4字节
  • 打赏
  • 举报
回复
lif2000 2003-09-28
4是这个指针所占有的空间大小
  • 打赏
  • 举报
回复
cxf1976 2003-09-28
32位的系统就是这样
  • 打赏
  • 举报
回复
晨星 2003-09-28
char s[] = "……",则不一样,这里,s是个数组名,对数组名进行sizeof运算,得出的是数组的长度。注意,数组名只是个地址,你可以说它是个指针(歧义?),但你肯定不可以说它是个“指针变量”。
  • 打赏
  • 举报
回复
晨星 2003-09-28
p是个指针变量,32为系统中指针变量都是32位的。
  • 打赏
  • 举报
回复
dawndu 2003-09-28
p是个指针,它的大小是32位的,就是4了
  • 打赏
  • 举报
回复
HongHuer 2003-09-28
地址是 32 位。就是 4。
  • 打赏
  • 举报
回复
sdchl 2003-09-28
4是指指针的大小,不是它指向的空间的大小。
  • 打赏
  • 举报
回复
相关推荐
发帖
非技术类
加入

1632

社区成员

VC/MFC 非技术类
社区管理员
  • 非技术类社区
申请成为版主
帖子事件
创建了帖子
2003-09-28 05:41
社区公告
暂无公告