今天,我用g++来编译一个文件时,出现了这种错误。要编译的源码文件名为test1_1。后来,我把文件名改为test1_1.cpp就可以正常编译了。这是怎么回事???
哎,原来是我傻逼了,原来GCC编译器套件对源代码的后缀是有要求的,它根据后缀来判断源码类型的。
这是我查阅到的资料:
GCC文件后缀名:
.c为后缀的文件,C语言源代码文件;
.a为后缀的文件,是由目标文件构成的档案库文件;
.C,.cc或.cxx 为后缀的文件,是C++源代码文件;
.h为后缀的文件,是程序所包含的头文件;
.i 为后缀的文件,是已经预处理过的C源代码文件;
.ii为后缀的文件,是已经预处理过的C++源代码文件;
.m为后缀的文件,是Objective-C源代码文件;
.o为后缀的文件,是编译后的目标文件;
.s为后缀的文件,是汇编语言源代码文件;
.S为后缀的文件,是经过预编译的汇编语言源代码文件。