我写了一个简单的 C 程序,我期待它会在编译中失败,但不幸的是它在 C 中编译并运行良好,但在 C++ 中编译失败。考虑以下程序:
#include <stdio.h>
int main()
{
char *c=333;
int *i=333;
long *l=333;
float *f=333;
double *d=333;
printf("c = %u, c+1 = %u",c,c+1);
return 0;
}
访问此链接:http: //ideone.com/vnKZnx
我认为由于 C++ 的强类型检查,这个程序肯定不能在 C++ 中编译。为什么这个程序用 C 编译?这是编译器也显示警告的事实。我正在使用 Orwell Dev C++ IDE(gcc 4.8.1 编译器)。我还在其他编译器(Borland Turbo C++ 4.5)上尝试了相同的程序,通过扩展名 .c 保存它,但在这个编译器上它无法编译。