区别: 1.malloc与free是C/C++语言的标准库函数,new/delete是C++的运算符: 2.new自动计算需要分配的空间,而malloc需要手工计算字节数: 3.new是类型安全的,而malloc不是:比如: int* p = new float[2];//编译错误: int* p = (int*)malloc(2*sizeof(double));//编译时无法指出错误 4.new调用operator new分配足够的空间,并调用相关对象的构造函数,而malloc不能调用构造函数