这个内存的值为什么会这样显示呀!

char c[10] = {'1','2','3','4','5','6','7'};
char c2 = '1';
char *c1 = c2;
printf("%d\n",sizeof(c));
printf("%d\n",sizeof(c1));
printf("%d\n",sizeof(c2));
system("pause");
我当时就想看看c,c1,c2的值的大小,没有想到确实出乎我的意料,我以为c=10,c1=1,c2=1,没想到c=10,c1=4,c2=1,不是说指针都占1的么?
全部评论
指针和系统位数相等,比如32位就是四个字节,64位是8字节
点赞 回复 分享
发布于 2016-09-06 20:21

相关推荐

斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务