这是.c文件经过gcc -E 预处理得到的.i文件中的内容,其中__extension__是什么作用
gcc对标准C语言进行了扩展,但用到这些扩展功能时,编译器会提出警告,使用__extension__关键字会告诉gcc不要提出警告。
gcc选项-ansi指示编译器编译符合标准的程序,但是不限制其它方式,只要它与标准不冲突。这样,asm、typeof、inline都将无效,但是__asm__、__typeof__、__inline__还将有效。
经常与-ansi一起使用的是-pedantic选项,它严格按照ISO标准产生需要的警告信息,但是如果程序中使用了__extension__,则-pedantic选项对__extension__后的表达式无影响。
如果要非常严格,可以使用-pedantic-errors选项。这样,所有与标准不符和的代码统统被编译器当成是错误而不是警告。
gcc对标准C语言进行了扩展,但用到这些扩展功能时,编译器会提出警告,使用__extension__关键字会告诉gcc不要提出警告。
gcc选项-ansi指示编译器编译符合标准的程序,但是不限制其它方式,只要它与标准不冲突。这样,asm、typeof、inline都将无效,但是__asm__、__typeof__、__inline__还将有效。
经常与-ansi一起使用的是-pedantic选项,它严格按照ISO标准产生需要的警告信息,但是如果程序中使用了__extension__,则-pedantic选项对__extension__后的表达式无影响。
如果要非常严格,可以使用-pedantic-errors选项。这样,所有与标准不符和的代码统统被编译器当成是错误而不是警告。