编译器visual studio
如下代码:
int **ip;
ip = (int **)malloc( sizeof(int*) *2);
for(int i = 0;i < 2 ; ++i)
{
ip[i] = (int *)malloc(sizeof(int) * 3);
}
//测试sizeof(ip)/sizeof( int *)值为1,
//sizeof(p)值为4,
//测试sizeof(ip[0])/sizeof( int)值也为1,
在看如下代码:
int ia[2][3];
//测试sizeof(ia)/sizeof( int *)值为2,
//sizeof(p)值为24,
//
//测试sizeof(ia[0])/sizeof( int)值也为3,
sizeof计算的是变量所占的内存的大小,在32位iede操作系统下面,所有的指针类型的大小又是4 ,int类型的数据大小为4 字节,懂了吧,只要是指针全是4 ,其他的数据类型看具体的情况,数组大小 为数组的类型大小*数组的长度
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。