深入解析 C 语言中的 Token

在 C 语言编程中,Token(标记)是程序中具有特定含义的最小单元。我们可以把 Token 看作是构建 C 程序的基石,C 编译器通过识别它们来组成有效的表达式和语句。Token 可以分为不同的类别,每个类别在程序中都扮演着特定的角色。

C 语言中 Token 的类型

!Tokens-in-C

根据它们在程序中执行的功能,C 语言的 Token 可以分为六种类型。让我们来看看具体有哪些:

目录

  • 标点符号
  • 关键字
  • 字符串
  • 运算符
  • 标识符
  • 常量

1. 标点符号

C 语言中包含了一些具有特殊含义的特殊符号,因此它们不能用于其他用途。以下列出了一些常见的标点符号:

  • 方括号 []:左方括号和右方括号用于数组元素的引用。它们表示一维或多维的下标。
  • 圆括号 ():这些特殊符号用于指示函数调用和函数参数。
  • 花括号 {}:这对左花括号和右花括号用于标记包含多条可执行语句的代码块的开始和结束。
  • 逗号 (, ):它用于分隔多个语句,例如在函数调用中分隔参数。
  • 冒号 (:):它本质上是一个运算符,通常用于调用所谓的初始化列表。
  • 分号 (;):它被称为语句终止符。它表示一个逻辑实体的结束。这就是为什么每条单独的语句都必须以分号结束的原因。
  • 星号 (*):它用于创建指针变量以及进行变量的乘法运算。
  • 赋值运算符 (=):它用于赋值以及逻辑操作的验证。
  • 预处理器 (#):预处理器是一个宏处理器,由编译器在实际编译之前自动调用,用于转换你的程序。
  • 点 (.):用于访问结构体或联合体的成员。
  • 波浪号 (~):按位取反运算符。

示例:

#include  

int main() {
  
    // ‘
‘ 是一个特殊符号,
    // 代表换行
    printf("Hello, 
 World!");  
    return 0;
}

输出

Hello, 
 World!

2. 关键字

关键字是 C 语言中具有预定义含义的保留字。这些字不能用作标识符(如变量名、函数名等)。关键字定义了程序的结构和行为。C 语言支持 32 个关键字,例如 INLINECODEbc895fb1、INLINECODE38e2a8f4、if 等。
示例:

#include 

int main() {
   
    // ‘int‘ 是一个关键字,用于
    // 定义变量类型
    int x = 5;  
    printf("%d", x);
  
    // ‘return‘ 是一个关键字,用于退出
    // 主函数
    return 0;  
}

输出

5

> 注意: 关键字的数量可能会根据你使用的 C 语言版本而变化。例如,ANSI C 中有 32 个关键字,而在 C11 中增加到了 44 个。此外,在最新的 C23 标准中,关键字数量增加到了大约 54 个。

3. 字符串

字符串本质上是一个以空字符(‘\0’)结尾的字符数组。这个空字符标志着字符串的结束。字符串总是用双引号括起来。而在 C 和 C++ 中,单个字符则是用单引号括起来的。
示例:

#include 

int main() {
  
    // "Hello, World!" 是一个字符串字面量
    char str[] = "Hello, World!";  
    printf("%s", str);
    return 0;
}

输出

Hello, World!

4. 运算符

运算符是作用于 C 语言变量和其他对象时触发动作的符号。运算符作用的数据项称为操作数。

示例:

#include 

int main() {
    int a = 10, b = 5;  
  
    // ‘+‘ 是一个算术运算符,用于
    // 加法
    int sum = a + b;  
    printf("%d", sum); 
    return 0;
}

输出

15

5. 标识符

标识符是我们给变量、函数、数组和其他用户定义项起的名称。它们必须以字母(a-z, A-Z)或下划线 (_) 开头,其后可以跟字母、数字(0-9)和下划线。
示例:

#include 

int main() {
  
    // ‘num‘ 是一个标识符,用于
    // 命名一个变量
    int num = 10;  
    printf("%d", num); 
    return 0;
}

输出

10

6. 常量

常量是 C 程序中使用的固定值。这些值在程序执行过程中不会改变。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/28089.html
点赞
0.00 平均评分 (0% 分数) - 0