我现在要问的是,delete
和new
运算符在C中的作用是什么?我问过这个问题,当我只是想着如何用C ++分配内存时,我记得你使用new
和delete
关键字,(malloc()
和free()
在C)。但是,当我在new
文件中输入delete
和.c
关键字时。它显示为关键字。关键字在C(非C ++)中的用途究竟是什么。
UsbDriver *ud = malloc(sizeof(UsbDriver));
free(ud);
new // What is this keyword?(C)
delete // What is this keyword?(C)
答案 0 :(得分:7)
new
中没有delete
和C
个关键字。只是您的编辑错误将其标识为关键字并应用syntax highlighting。
FWIW,如果您可以选择根据语言(文件扩展名,可能)控制编辑器的语法高亮,请将其设置为C,即使它显示为关键字,切换到更好的编辑。
例如,请参阅此在线编译器和编辑器。
答案 1 :(得分:6)
您可能正在使用支持C和C ++的编辑器。因为new和delete不是C的一部分。