【发布时间】:2017-01-19 12:47:32
【问题描述】:
#include<stdio.h>
#include<stdlib.h>
int main (int argc, char *argv[]) {
int* arr1 = (int*)malloc(sizeof(int)*4);
int arr2[4];
printf("%d \n", sizeof(arr1));
printf("%d \n", sizeof(arr2));
free(arr1);
return 0;
}
输出
8
16
为什么?
【问题讨论】:
-
第一个:sizeof指针。第二:sizeof数组....
-
Ludin@ 是关于堆的。
标签: c arrays pointers malloc sizeof