GCC中关于asm的语法

  • GCC中关于asm的语法
    • 标准C语言(用-ansi-std去编译):用__asm__
    • GNU扩展GNU extension):用asm

背景:

当用标准C-ansi-std),会禁用掉部分关键字:

  • asm
  • typeof
  • inline
    • 特例:当-std=c99或更新版本,可以用inline
  • restrict
    • 只有当-std=gnu99-std=c99(等价的-std=iso9899:1999)的或更新版 时,才能用restrict

-》想要用上述关键字的话,解决办法是:

在前面和后面分别加上2个下划线

-》对于asm,可以自己加上对应定义:

#ifndef __GNUC__
#define __asm__ asm
#endif

results matching ""

    No results matching ""