mallo和new的用法也是经常容易被混淆,很多人只知道一个是c语言里的,一个是c++里的,一知半解吧。万一真被面试官问到,就真的悔不当初了,那咱就做一个总结吧,也不深究太底层,就是为了把它们的大致用处和基本原理弄清楚。
1、malloc和free函数
malloc中文叫做动态内存分配,如果分配成功则返回指向被分配内存的指针,分配失败返回空指针NULL。
(类型 *)malloc(int size); //malloc向系统申请分配指定size个字节的内存空间,返回类型是 类型 * 。
free是为了将之前用malloc分配的空间还给程序或者是操作系统,也就是释放了这块内存,让它重新得到自由。(malloc和free应配对使用),若malloc了一次,就记得free一次,不然就会内存泄露,但是free多次同样会出现错误。
char * p = (char *)malloc