代码:
int *Array[8];
Array[0] = (int *) malloc(sizeof(int) * 5);
printf("%d" , sizeof(Array)/sizeof(int)); // Result = 8 : True
printf("%d" , sizeof(Array[0])/sizeof(int)); // Result = 1 : False
如何获得Array [0]的长度为5?
答案 0 :(得分:7)
你不能。
C中的动态数组不随身携带长度信息。因此,您需要编写代码以记住它分配了长度为5的内容。