C指针原理教程之C指针基础

  

tcctok.h定义了C语言的词法分析的基本元素,主要定义了关键字。

  
  

/关键字/
  ,,,,DEF (TOK_INT“int”)
  ,,,,DEF (TOK_VOID“空白”)
  ,,,,DEF (TOK_CHAR char)
  ,,,,DEF (TOK_IF,“如果”)
  ,,,,DEF (TOK_ELSE,“其他”)
  ,,,,DEF (TOK_WHILE,“虽然”)
  ,,,,DEF (TOK_BREAK“打破”)
  ,,,,DEF (TOK_RETURN“返回”)
  ,,,,DEF (TOK_FOR,“为”)
  ,,,,DEF (TOK_EXTERN“外来的”)
  ,,,,DEF (TOK_STATIC“静态”)
  ,,,,DEF (TOK_UNSIGNED无符号)
  ,,,,DEF (TOK_GOTO“goto”)
  ,,,,DEF (TOK_DO,“做”)
  ,,,,DEF (TOK_CONTINUE,“继续”)
  ,,,,DEF (TOK_SWITCH“开关”)
  ,,,,DEF (TOK_CASE“案件”)

     

..............................   

..............................   

..............................   

同时定义了条件编译的相关内容

  
  

/* * * * */
/以下关键词。他们包括缓解解析/
/预处理程序>/移行细胞癌——小C编译器      版权(c) 2001 - 2004法布里斯      这个库是自由软件;你可以和/或重新分配   修改它根据GNU Lesser General公开   许可证是由自由软件基金会发布;要么   版本2的许可,或(任您选)其后的版本。      这个库是分布式的,希望这将是有用的,   但是没有任何保修;甚至没有的默示保证   适销性或健身为特定目的。看到GNU   较小的通用公共许可证的更多细节。      你应该已经收到了GNU Lesser General公共的副本   许可证以及这个库;如果不是,写信给自由软件   基础,Inc ., 59庙的地方,330套房,波士顿02111 - 1307美国   */# include“tcc.h”/* * * *///全局变量   使用GCC扩展还是太极拳扩展//使用GNU C扩展   ST_DATA int gnu_ext=1;//使用TinyCC扩展   ST_DATA int tcc_ext=1;      ST_DATA结构标注太极拳状态。/XXX:尽快摆脱这种/ST_DATA struct TCCState * tcc_state;/* * * */之前      

根据标志包含一些相应太极拳文件。

  
  

# ifdef ONE_SOURCE
  # include“tccpp。c”
  # include“tccgen。c”
  # include“tccelf。c”
  # include“tccrun。c”
  # ifdef TCC_TARGET_I386
  # include“i386-gen。c”
  # endif
  # ifdef TCC_TARGET_ARM
  # include“arm-gen。c”
  # endif
  # ifdef TCC_TARGET_C67
  # include“c67-gen。c”
  # endif
  # ifdef TCC_TARGET_X86_64
  # include“x86_64-gen。c”
  # endif
  # ifdef CONFIG_TCC_ASM
  # include“tccasm。c”
  #如果定义TCC_TARGET_I386 | |定义TCC_TARGET_X86_64
  # include“i386-asm。c”
  # endif
  # endif
  # ifdef TCC_TARGET_COFF
  # include“tcccoff。c”
  # endif
  # ifdef TCC_TARGET_PE
  # include“tccpe。c”
  # endif
  # endif/ONE_SOURCE/

  
  

CONFIG_TCC_ASM打开内联汇编的开关
/* * * */
  的ifndef CONFIG_TCC_ASM
  ST_FUNC空白asm_instr (void)
  {
  ,,tcc_error(“内联asm()不支持”);
  }
  ST_FUNC空白asm_global_instr (void)
  {
  ,,tcc_error(“内联asm()不支持”);
  }
  # endif

  

C指针原理教程之C指针基础