字面值/常量

原文:https://www.studytonight.com/c/c-literals.php

如果我们想在 C 程序中使用一些数据值,我们也可以直接使用一个值,而不是创建一个变量来存储该值。当我们在 C 程序中直接使用一个值而不创建变量时,它被称为字面值

当我们想在程序中使用固定值时,使用字面值,因此字面值也被称为常量

1100Y '10.5 等。然而,当我们在 C 中使用一个变量时,我们可以改变存储在变量中的值。

在语言中,字面值可以有 5 种类型,它们是:

  1. 整数字面值

  2. 字符字面值

  3. 浮点字面值

  4. 字符串字面值

  5. 反斜杠字符字面值(转义序列)

1.整数字面值

C 程序中使用的任何没有小数或指数部分的数值都是整数。

整数字面值有三种类型:

  1. 小数位数(基数 10)

  2. 八进制数(基数 8) -使用数字 0 到 7 。对于八进制,数字 10 与 8 相同。

  3. 十六进制数(以 16 为基数)-使用数字 0 到 9 ,以及字母 A 到 F 。(A、B、C、D、E、F 代表 10、11、12、13、14 和 15)

例如,

Decimal: 7, -10 etc
Octal: 023, 045 etc
Hexadecimal: 0x2a, 0x521 etc

在 C 语言中,八进制数字以 0 开头,十六进制数字以 0x 开头。

也可以在整数值上使用类型后缀,让编译器更容易理解整数值的类型。如果在值后加上L,编译器会将其视为long值,如果在值后加上U,编译器会将其视为无符号

例如,

3500L, 14l    // long value

99U, 89u    // unsigned int value

2.浮点字面值

任何有效的浮点值,当直接在 C 程序中使用时,都称为浮点字面值。

浮点数有小数部分(分数)或指数部分。

例如,

100.50
0.000127
-0.77E-5

E-5 代表 10 -5

如果我们在值后添加类型后缀 Ff,那么编译器默认会将该值视为float类型。

例如,

127.7F, 40f etc.

3.字符字面值

当在 C 程序中直接使用时,有效的字符数据类型值称为字符字面值。

字符值包含在单引号中。

例如,

'A', 'B', 'c', '#', etc.

4.字符串字面值

字符序列被称为字符串。我们将在本教程系列的后面部分详细了解 C 弦

字符串字面值是用双引号括起来的多个字符的值。

例如,

"study", "tonight", "c programming", etc.

5.反斜杠字符字面值

也称为转义序列,这些字符与反斜杠字符\的组合对 C 编译器有特殊的意义。

反斜杠字符用于转义特殊含义的字符,使其成为编译器的正常字符。

例如,如果您使用单引号,编译器会认为它是字符值的开始或结束,但是如果您想要单引号字符怎么办。

'\''    \\ this is character with value '

在上例中的第一个和最后一个单引号标记了字符值的开始和结束,而反斜杠转义字符通知编译器将其后面的单引号视为正常字符。

密码 意义
\b 退格
\f 换页
\n 换行
\r 回车
\t 横表
\" 双引号
\' 单引号
\ 反斜线符号
\v 垂直标签
\a 警报
\? 问号
\N 奥克塔高兴
\xN 十六进制常量

换行符水平标签代码是非常常用的,当你开始用 C 语言编码时,你会经常用到它们。所以记住\n代表换行符\t代表水平制表符

结论:

至此,我们已经涵盖了 C 语言中使用的所有常量,它们也被称为字面值。不要忽略反斜杠转义字符,因为它们也非常重要,并且在 C 程序中广泛使用。