说到动态内存开辟,就不得不谈malloc、calloc、realloc以及free,所以接下来分别谈一下这四个函数。
1、malloc(开辟动态内存空间)
头文件:#include<stdlib.h> 定义:void* malloc ( size_t num )
其函数参数仅仅只要写多少个字节,所以鬼知道其类型是什么,所以其返回值也只能为void*类型。
- malloc开辟内存空间就一定能开辟成功吗?
答案显然不可能,毕竟计算机最大内存都限制了,所以不是想开辟多大就能开辟多大,也就是说不能所有情况都能开辟成功!那怎么才能知道没开辟成功呢?
没开辟成功一定会有错误信息显示,所以可以调用perror函数,它可以直接将错误信息打印出来,当然也可以使用strerror,不过其参数应为errno(c语言库函数出错信息)。
#include<stdio.h>