在上一个教程中,您了解了 C 语言的注释。现在,让我们来了解 C 语言中的变量、常量和字面量。
变量
在编程中,变量是一个用于保存数据的容器(存储区域)。
为了指示存储区域,每个变量都应有一个唯一的名称(标识符)。变量名只是内存位置的符号表示。例如
int age = 25;
这里,age 是一个 `int` 类型的变量,我们为其赋了一个整数值 `25`。
变量的值可以改变,因此得名变量。
char ch = 'a';
// some code
ch = 'l';
访问此页面以了解更多关于 变量可以存储的不同类型数据。
1. 变量名只能包含字母(大写和小写字母)、数字和下划线。
2. 变量的第一个字符必须是字母或下划线。
3. 变量名(标识符)的长度没有规定。但是,如果变量名超过 31 个字符,某些编译器可能会出现问题。
注意:您应该始终尝试为变量起有意义的名称。例如:`firstName` 是比 `fn` 更好的变量名。
C 语言是一种强类型语言。这意味着一旦声明了变量类型,就不能更改。例如
int number = 5; // integer variable
number = 5.5; // error
double number; // error
这里,number 变量的类型是 `int`。您不能将浮点数(小数)值 5.5 赋给此变量。同样,您也不能将变量的数据类型重新定义为 `double`。顺便说一句,要在 C 语言中存储小数,您需要将其类型声明为 `double` 或 `float`。
常量
如果您想定义一个值不能被更改的变量,可以使用 `const` 关键字。这将创建一个常量。例如,
const double PI = 3.14;
注意,我们添加了关键字 `const`。
这里,PI 是一个符号常量;它的值不能被更改。
const double PI = 3.14;
PI = 2.9; //Error
您还可以使用 `#define` 预处理器指令定义常量。我们将在 C 宏教程中学习它。
字面量
字面量是用于表示固定值的 数据。它们可以直接在代码中使用。例如:1、2.5、'c' 等。
这里,1、`2.5` 和 'c' 是字面量。为什么?因为您不能为这些项赋不同的值。
1. 整数
整数是没有小数部分或指数部分的数字字面量(与数字相关)。C 语言中有三种类型的整数字面量:
- 十进制 (基数 10)
- 八进制 (基数 8)
- 十六进制 (基数 16)
例如
Decimal: 0, -9, 22 etc Octal: 021, 077, 033 etc Hexadecimal: 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. 字符串字面量
字符串字面量是用双引号括起来的字符序列。例如
"good" //string constant "" //null string constant " " //string constant of six white space "x" //string constant having a single character. "Earth is round\n" //prints string with a newline
5. 转义序列
有时,有必要使用 C 语言中无法输入或具有特殊含义的字符。例如:换行(回车)、制表符、问号等。
为了使用这些字符,会使用转义序列。
转义序列 | 字符 |
---|---|
\b |
退格符 |
\f |
换页符 |
\n |
换行 |
\r |
回车 |
\t |
水平制表符 |
\v |
垂直制表符 |
\\ |
反斜杠 |
\' |
单引号 |
\" |
双引号 |
\? |
问号 |
\0 |
空字符 |
例如:`\n` 用于换行。反斜杠 `\` 会导致编译器在处理字符时脱离正常方式。