- C++ 基础
- C++ 首页
- C++ 概述
- C++ 环境设置
- C++ 基本语法
- C++ 注释
- C++ Hello World
- C++ 省略命名空间
- C++ 常量/字面量
- C++ 关键字
- C++ 标识符
- C++ 数据类型
- C++ 数值数据类型
- C++ 字符数据类型
- C++ 布尔数据类型
- C++ 变量类型
- C++ 变量作用域
- C++ 多个变量
- C++ 基本输入/输出
- C++ 修饰符类型
- C++ 存储类
- C++ 运算符
- C++ 数字
- C++ 枚举
- C++ 引用
- C++ 日期和时间
- C++ 控制语句
- C++ 决策制定
- C++ if 语句
- C++ if else 语句
- C++ 嵌套 if 语句
- C++ switch 语句
- C++ 嵌套 switch 语句
- C++ 循环类型
- C++ while 循环
- C++ for 循环
- C++ do while 循环
- C++ foreach 循环
- C++ 嵌套循环
- C++ break 语句
- C++ continue 语句
- C++ goto 语句
- C++ 构造函数
- C++ 构造函数和析构函数
- C++ 复制构造函数
- C++ 文件处理
- C++ 文件和流
- C++ 从文件中读取
C++ 字符 (char) 数据类型
C++ 中的**字符 (char) 数据类型**代表字母数字值,可以是各种各样的字符。这些字符可能包括字母,如 'a'、'b' 和 'c',数字,如 '1'、'2' 和 '3',符号,如 '#'、'$' 和 '&',以及更多。
**字符数据类型**占用 1 字节(即 8 位)的内存空间来存储字符。在 C++ 中,关键字“**char**”用于声明字符变量。
在本教程中,我们将进一步探讨字符数据类型及其对应的变量。
使用字符 (char) 数据类型
以下是字符 (char) 数据类型的一些用途:-
- 当我们只需要保存单个字符并且不需要 字符串 的开销时,使用**char** 数据类型。
- **char** 数据类型也可以以原始形式用作数组,而无需使用字符串字面量。
- 在 ASCII 形式中,**char** 数据类型可以用来表示数值,反之亦然。
char 数据类型的取值
C++ 中的字符 (char) 数据类型可以有多个值,这些值如下:-
- 大写字母,如 A、B、Z 等。
- 小写字母,如 a、b、z 等。
- 符号,如 $、%、& 等。
- 转义序列,这将在本文后面讨论。
创建字符 (char) 变量
我们可以使用“char”关键字后跟变量名来声明字符变量。
语法
使用以下语法创建 char 类型变量:-
char variable_name = [value];
这里,[value] 是可选的,可以在声明时用于赋值。
示例
在下面的示例中,我们声明了一个 char 变量,并为其赋值。
// C++ program to demonstrate // Character data type #include <iostream> using namespace std; int main(){ char ch; return 0; }
字符 (char) 数据类型的示例
以下示例显示了不同字符数据类型的用法:-
// C++ program to demonstrate // Character data type #include <iostream> using namespace std; int main() { char ch,ch1,ch2; ch='a'; //this is an alphabet ch1='&'; //this is a symbol ch2='1'; //this is a number cout<<ch<<endl<<ch1<<endl<<ch2<<endl; return 0; }
输出
a & 1
字符的 ASCII 值
ASCII 代表“美国信息交换标准代码”。它是分配给不同字符和符号的第一组编码值。现代计算机、HTML 和互联网中使用的字符集都基于 ASCII。
ASCII 表描述了所有字符类型的数值,这些值可用于声明字符,而无需显式使用字符本身。它包含数字 0-9、A 到 Z 的大小写英文字母以及一些特殊字符。
以下数据提供了 C++ 中所有可用字符的 ASCII 值的参考:-
ASCII Range of 'a' to 'z' = 97-122 ASCII Range of 'A' to 'Z' = 65-90 ASCII Range of '0' to '9' = 48-57
显示 ASCII 声明的示例
以下示例显示了用户如何使用 ASCII 值声明字符变量,而无需显式使用字符本身:-
#include <iostream> using namespace std; int main() { char ch,ch1,ch2; ch=65; //this is an alphabet ch1=45; //this is a symbol ch2=55; //this is a number cout<<ch<<endl<<ch1<<endl<<ch2<<endl; return 0; }
输出
A - 7
字符变量的隐式转换
可以使用 ASCII 参考将字符变量隐式转换为其整数值,反之亦然。因此,当我们在 C++ 中声明一个字符时,我们可以引用其 ASCII 值,而 ASCII 数值也可以用于访问其字符值。这是通过数据类型的隐式转换或类型转换来完成的。
我们可以添加我们需要将给定变量转换为的数据类型的关键字,编译器会自动更改数据类型。例如,如果我们写 char(97),它将加载 ASCII 数字 97 的字符值,即 'a'。对于将字符数据类型转换为整数(ASCII)值,这同样适用。
以下示例清楚地说明了这一点:-
示例
以下示例显示了 char 到 int 以及 int 到 char 的隐式类型转换:-
#include <iostream> using namespace std; int main() { char c = '$'; int a = 97; cout << "The Corresponding ASCII value of '$' : "; cout << int(c) << endl; cout << "The Corresponding character value of 97 : "; cout << char(a) << endl; return 0; }
输出
The Corresponding ASCII value of '$' : 36 The Corresponding character value of 97 : a
C++ 中的转义序列
以反斜杠 (“\”) 开头的字符变量称为转义序列。它们决定了编译器输出窗口上的输出序列。在这种情况下,反斜杠也称为“转义字符”。
下表显示了 C++ 中可用的不同类型的转义序列:-
序号 | 转义序列 | 字符 |
---|---|---|
1. | \n | 换行 |
2. | \\ | 反斜杠 |
3. | \t | 水平制表符 |
4. | \v | 垂直制表符 |
5. | \0 | 空字符 |
以下示例代码清楚地说明了转义序列的用法:-
示例 1
#include <iostream> using namespace std; int main() { char a = 'H'; char b = 'E'; char c = 'Y'; char d = '\n'; //enter new line char e = '\t'; //tab to enter space cout << a << b << c << d << a << b << c << e << a << b << c; return 0; }
输出
HEY HEYHEY HEY HEY
转义字符还可以用于将特殊字符插入字符串中。以下示例清楚地说明了这一点:-
示例 2
#include <iostream> using namespace std; int main() { //string txt = "Hey, where are you "vikas" ? "; //this throws error string txt = "Hey, where are you \"vikas\"? "; cout<<txt<<endl; return 0; }
输出
Hey, where are you "vikas"?