n];
这样编写会在编译时出错 , 编译器会提醒[ ]中应为常量表达式 , 在C中定义数组时可以用的有以下几种 ,例:
#define N 10...(int)*n).
4).如果size为0, 此行为是未定义的, 会发生未知错误, 取决于编译器
具体怎么用呢 ,举个例子 ....,这个n的值并不需要像定义一个普通数组一样必须是常量, 可以使程序运行时得出的, 或是用户输入的
----
2.free()
void free(void* ptr)
在堆中申请的内存空间不会像在栈中存储的局部变量一样...,方法是在calloc()前加强制转 ,转化成我们所需类型 ,如: (int*)calloc(num, sizeof(int)).
4).如果size与num有一个或都为0, 此行为是未定义的, 会发生未知错误...那realloc() 函数就可以做到对动态开辟内存大小的调整(既可以往大调整, 也可以往小了调整) .
1).ptr为需要调整的内存地址
2).size为调整后需要的大小(字节数)
3).若调整成功,