编辑这个页面须要登录或更高权限!

C 语言变量、常量和字面量

在本教程中,您将学习变量和命名变量的规则。您还将学习C编程中的不同文字以及如何创建常量。

变量

在编程中,变量是用于保存数据的容器(存储区)。

为了指定存储区域,应该为每个变量赋予唯一的名称(标识符)。变量名称只是存储位置的符号表示。例如:

int playerScore = 95;

在这里,playerScore是一个int类型变量。在这里,为这个变量分配了一个整数值95。

变量的值可以更改,因此可以更改名称。

char ch = 'a';
// some code
ch = 'l';

变量命名规则

  1. 变量名称只能包含字母(大写和小写字母),数字和下划线。

  2. 变量的第一个字母应该是字母或下划线。

  3. 对于变量名称(标识符)可以使用多长没有指定。但是,如果变量名超过31个字符,则在某些编译器中可能会遇到问题。

注意:您应始终尝试为变量赋予有意义的名称。例如:firstName是比fn更好的变量名。

C 语言是一种强类型语言。这意味着变量类型一旦声明就无法更改。例如:

int number = 5;      //整型变量
number = 5.5;        // error
double number;       // error

在这里,number变量的类型为int。您不能分配浮点(十进制)值5.5给这个变量。另外,您不能将变量的数据类型重新定义为double(双精度浮点型)。顺便说一下,要将十进制值存储在C中,您需要将其类型声明为double 或 float。

访问此页面以了解有关变量可以存储的不同类型数据的更多信息。

字面量

字面量是用于表示固定值的数据。它们可以直接在代码中使用。例如:1,2.5,'c'等。

这里1,2.5和'c'是字面量。为什么?您不能为这些项分配不同的值。

1.整数

整数是没有任何小数或指数部分的数字文字(与数字关联)。C编程语言中有三种类型的整数字面量:

  • 十进制(以10为底)

  • 八进制(以8为底)

  • 十六进制(以16为底)

例如:

十进制: 0, -9, 22 etc
八进制: 021, 077, 033 etc
十六进制: 0x7f, 0x2a, 0x521 etc

在C编程中,八进制以0开头,十六进制以0x开头。

2.浮点字面量

浮点字面量是具有分数形式或指数形式的数字字面值。例如:

-2.0
0.0000234
-0.22E-5

注意: E-5 = 10-5

3.字符

通过将单个字符括在单引号内来创建字符字面量。例如:'a','m','F','2','}'等。

4.转义序列

有时,在C编程中必须使用不能键入或具有特殊含义的字符。例如:换行符(输入),制表符,问号等。

为了使用这些字符,使用了转义序列。

转义字符序列
转义序列字符
\b退格符
\f换页符
\n换行符
\r回车符
\t水平制表符
\v垂直制表符
\\反斜杠
\'单引号
\"双引号
\?问号
\0空字符

例如:\n用于换行符。反斜杠\会导致编译器无法正常处理字符。

5.字符串字面量

字符串字面量是用双引号引起来的一系列字符。例如:

"good"                  //字符串常量
""                     //空字符串常量
"      "               //六个空格的字符串常量
"x"                    //具有单个字符的字符串常量。
"Earth is round\n"         //用换行符打印字符串

常量

如果要定义一个不能更改其值的变量,则可以使用 const关键字。这将创建一个常量。例如,

const double PI = 3.14;

注意,我们增加了关键字 const。

在这里,PI是一个符号常量;其值不能更改。

const double PI = 3.14;
PI = 2.9; //错误

您也可以使用#define预处理器指令定义常量。我们将在C Macros(宏)教程中学习它  。