亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

什么是 char?

C++ 中的 char 是基本整型数据类型,存储单个字符。内部以 8 位整数表示,恰好占用 1 字节内存。因是整型,可像其他数值类型一样参与算术运算和比较。

本教程你将学到:

ASCII – 底层编码

存储 char 值时,C++ 编译器将其解释为 ASCII 码(American Standard Code for Information Interchange)。ASCII 给每个可打印字符分配一个整数值(0–127)。例如字母 'a' 对应十进制 97。

声明 char 变量

用 char 关键字加变量名声明。可选用单引号括起的单字符字面量初始化。

char variableName; // 声明
char variableName = 'X'; // 声明并初始化

示例 1:声明并打印 char

#include <iostream> using namespace std; int main() { char grade = 'B'; cout << "I scored a: " << grade; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

打印字符的 ASCII 值

char 本质是整数,可强转为 int 显示其 ASCII 码。

示例 2:用户输入与 ASCII 输出

#include <iostream> using namespace std; int main() { char ch; cout << "Enter any character: "; cin >> ch; cout << "The ASCII Value of " << ch << " is " << int(ch); return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

从 ASCII 码打印字符

将整数字面量赋给 char 变量,编译器将该整数视为 ASCII 码存储对应字符。

示例 3:ASCII 转字符

#include <iostream> using namespace std; int main() { char x = 64, y = 66, z = 71; cout << x << y << z; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

从用户读取字符

提取运算符 >> 仅读取第一个非空白字符,后续字符留在输入缓冲区待后续读取。

示例 4:读取两个字符

#include <iostream> using namespace std; int main() { cout << "Type a sequence of characters: "; char ch; cin >> ch; cout << "The ASCII code of " << ch << " is " << int(ch) << '\n'; cin >> ch; cout << "The ASCII code of " << ch << " is " << int(ch) << '\n'; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

将字符转换为字符串

将单字符转为 std::string 有多种技术,下面列出最常用的方法。

#1 – 使用 string 构造函数

string st(1, 'C');

创建长度为 1、包含字符 'C' 的字符串。

示例 5

#include <iostream> #include <string> using namespace std; int main() { string st(1, 'C'); cout << "The resulting string is : " << st; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

#2 – 使用重载的 = 与 += 运算符

直接赋值或追加字符到字符串,简洁易读。

示例 6

#include <iostream> #include <string> using namespace std; int main() { string st; char b = 'B'; st = 'A'; st += b; cout << "The resulting string is : " << st; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

#3 – 使用 string 成员函数

示例 7

#include <iostream> #include <string> using namespace std; int main() { string st; st.push_back('A'); cout << "push_back A returns : " << st << endl; st = ""; st.append(1, 'C'); cout << "append C returns : " << st << endl; st = ""; st.assign(1, 'D'); cout << "assign D returns : " << st << endl; st.insert(0, 1, 'E'); cout << "insert single character returns : " << st << endl; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

#4 – 使用 std::stringstream

流运算符对 char 重载,易于转字符串。

示例 8

#include <iostream> #include <string> #include <sstream> using namespace std; int main() { string st; stringstream myst; myst << 'A'; myst >> st; cout << "The conversion of the single character returns the string: " << st; return 0; } 

输出:

C++ char 类型完全指南:声明、ASCII 码、输入输出与字符串转换

核心要点

C语言

  1. 可靠性互联网中的数据驾驭:高效管理策略
  2. 以高级性能监测最大化物联网ROI
  3. 深入理解 C++ 数据类型:基础类型、修饰符与最佳实践
  4. C++ do-while 循环详解:语法、实战示例与嵌套循环
  5. C++ 指针精通:核心概念、代码示例与实战应用
  6. C++ 运算符重载实战指南:语法、方法、限制与代码示例
  7. C++ 结构体详解:定义、初始化、指针、函数参数与局限性
  8. 掌握 C++ std::list:语法、函数与实战示例
  9. C++ 函数详解:从声明到调用的实战指南
  10. C++变量类型详解:内存布局、取值范围与操作集
  11. C++数据结构实战:结构体struct定义、访问、函数参数、指针与typedef别名
  12. 掌握 Java 类型转换:从自动拓宽到强制收窄及更多