为什么C / C ++变量不是以数字开头

在C / C ++中,变量名可以包含字母,数字和下划线(_)字符。C / C ++语言中有一些关键字,除此以外,所有内容都被视为标识符。标识符是变量,常量,函数等的名称。

我们不能指定以数字开头的标识符,因为编译器分为以下七个阶段。

  • 词法分析

  • 语法分析

  • 语义分析

  • 中间代码生成

  • 代码优化

  • 代码生成

  • 符号表

以上都不支持变量以数字开头。这是因为,如果编译器是数字或标识符,直到它在数字之后到达字母,就会感到困惑。因此,编译器将不得不回溯到不支持的词法分析阶段。在查看第一个字符后,编译器应该能够将标记识别为标识符或文字。

下面是一个示例,用于演示C中的变量声明。

示例

#include <stdio.h>

int main() {

   int 5s = 8;

   int _4a = 3;

   int b = 12;

   printf("The value of variable 5s : %d", 5s);

   printf("The value of variable _4a : %d", _4a);

   printf("\nThe value of variable b : %d", b);

   return 0;

}

上面的程序导致错误“整数常量后缀s无效”,因为变量以5开头。如果删除该变量,则程序将正常运行。

演示新程序的示例如下。

示例

#include <stdio.h>

int main() {

   int _4a = 3;

   int b = 12;

   printf("The value of variable _4a : %d", _4a);

   printf("\nThe value of variable b : %d", b);

   return 0;

}

输出结果

上面程序的输出如下。

The value of variable _4a : 3

The value of variable b : 12

以上是 为什么C / C ++变量不是以数字开头 的全部内容, 来源链接: utcz.com/z/338059.html

回到顶部