查看当前编译器支持的C/C++标准

gcc -E -dM - </dev/null | grep "STDC_VERSION"

或者

printf("%ld\n",__STDC_VERSION__);
printf("%ld\n",__cplusplus);

对应关系如下

如果没查到,则默认是c89的标准;

如果是#define __STDC_VERSION__ 199901L,则默认支持的是c99标准;

如果是#define __STDC_VERSION__ 201112L,则默认支持的c11标准;

  • C ++ 98:__cplusplus199711L
  • C ++ 11:__cplusplus201103L
  • C ++ 14:__cplusplus201402L
  • C ++ 17:__cplusplus201703L

posted on 2020-07-18 10:30  疾速瓜牛  阅读(6917)  评论(0编辑  收藏  举报

导航