.c扩展名与.C扩展名

时间:2018-08-12 10:25:53

标签: c pointers warnings codeblocks deprecation-warning

我试图编译一个非常简单的程序,该程序将字符串文字的基址存储在指向char的指针中 p,然后使用指针{{1}打印该字符串},如下所示:

p

由于错误,我以#include<stdio.h> int main() { char *p = "hello"; printf("%s", p); return 0; } 扩展名而不是.C扩展名保存了文件,并且看到当我使用.c扩展名进行编译时,还有一个警告:

.C

当我以deprecated conversion from string constant to ‘char*’ 扩展名编译程序时不存在,我正在使用 Code :: Blocks 16.01 。这里到底发生了什么?

1 个答案:

答案 0 :(得分:3)

显然,您的编译器按惯例将.C文件视为C ++源,在这种情况下,实际上不建议使用此转换。如果将其重命名为.cpp,则编译器输出可能应该保持不变。