CCS编译器的sizeof怎么不对啊
定义一个指针数组如下(17个指针元素):Uint16 *all_array[] = {Str0,Str1,Str00,Str3,Str4,Str5,Str6,Str14,Str7,Str11,Str12,Str9,Str10,Str19,Str8,Str22,Str23};
sizeof(all_array) 应该为34,
而且用&all_array减去&all_array的值也是34,
这证明编译器给array_all分配的内存就是34,
可是在watch 中 sizeof(all_array) = 23。
很是奇怪啊,大侠们的编译器也这样吗? 我这边的CCS都这样,大侠们有时间自己测试一下,给个反馈,谢谢~ 1.先为all_array--all_array分配一片内存再计算 回复【2楼】chiaw
-----------------------------------------------------------------------
Uint16 *all_array[] = {Str0,Str1,Str00,Str3,Str4,Str5,Str6,Str14,Str7,Str11,Str12,Str9,Str10,Str19,Str8,Str22,Str23};
的时候不是分配完了吗?
页:
[1]