如果是gcc在预编译的时候会有一个名叫__GLIBC__的宏,如果是g++会有一个叫做__GLIBCXX__的宏,如果想知道版本可以用宏
#ifdef __GLIBC__
int main () //gcc
#elif __GLIBCXX__
int main() //g++
另外,gcc和g++都不完全算是纯编译器,两个只有连接器的区别,编译的方式是基本一样的
想用c语言编写,输出编译器版本的代码,网上有比较全面的代码。你参照吧。完整代码比较长。
https://www.cnblogs.com/nalanhairuo/p/6089381.html