"Char"字符数据类型或字符数据类型用于存储字母,与数字和整数不同,字母和数字存储在布尔值中的整数和浮点值或true-false值中。
字符本质上是整数类型,其大小为1字节,可打印字符为(空格), !, " , #, $, %, &, ', (, ), *, +, ,, -, ., /, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, :, ;, <, =, >, ?, @, A, a, B, b, C, c, D, d, E, e, F, f, G, g, H, h, I, i, J, j, K, k, L, l, M, m, N, n, O, o, P, p, Q, q, R, r, S, s, T, t, U, u, V, v, W, w, X, x, Y, y, Z, z, [, \, ], ^, _, `, {, |, }, ~ and DEL (delete).
C++为我们提供了以下技术,可将char数组转换为字符串:
使用'c_str()'和'strcpy()'函数的语法如下:
"string-name.c_str();".
其中,c_str()将字符串的内容转换为C样式的非终止字符串。它提供对内部字符串缓冲区的直接访问。
我们可以使用" for"循环将字符转换为字符串-
首先,声明字符数组,然后分配数组的大小。然后,我们声明两个变量,一种是字符串类型,另一种是int类型。此后,我们可以通过为int变量分配0来使用" for"循环,其中int变量的值将小于array_size,并且每次迭代我们将int变量的值增加1。在显示字符串变量之前,我们必须在每次迭代时将值存储在字符串变量中。
#include <iostream> using namespace std; int main() { char char_array[] = {'L','E','A','R','N','F','K'}; int array_size = sizeof(char_array) / sizeof(char); string j = ""; int i; for(i = 0; i < array_size; i++) { /** 检索和合并位置'i'上的字符数组的值*/ j = j + char_array[i]; } cout << j <<endl; }
输出:
LEARNFK
我们可以使用-while循环将char转换为字符串-
首先声明字符数组,然后分配数组的大小。然后,我们声明两个变量,一个是字符串类型,另一个是值0的int类型。我们使用'while'循环检查int变量是否小于每次迭代时使用array_size,并在显示字符串变量之前将值存储在字符串变量中。
#include <iostream> using namespace std; int main() { char char_array[] = {'L','E','A','R','N','F','K'}; int array_size = sizeof(char_array)/sizeof(char); string j = ""; int i = 0; while(i < array_size) { /**检索和合并位置`i`上的字符数组的值*/ j = j + char_array[i]; i++; } cout << j <<endl; }
输出:
LEARNFK
要使用 std ::string 构造函数将字符转换为字符串,我们只需将数组传递给字符串构造函数即可。
#include <iostream> using namespace std; int main() { char char_array[] = {'L','E','A','R','N','F','K'}; string j(char_array); cout << j <<endl; }
输出:
LEARNFK
要使用'='运算符和字符串类将字符数组转换为字符串,我们必须将字符数组传递给string变量。
#include <iostream> using namespace std; int main() { char char_array[] = {'L','E','A','R','N','F','K'}; string j = char_array; cout << j <<endl; }
输出:
LEARNFK
为了使用自定义函数将字符转换为字符串,我们必须创建一个具有两个参数的自定义函数。在自定义函数中,我们必须声明两个变量string和integer。然后,我们使用" for"循环,在其中我们将0分配给一个int变量,将int变量的大小设置为小于array_size,然后将int变量的值设置为每次迭代增加一。该函数将返回字符串。对于主函数,我们声明字符数组及其大小,然后将字符数组及其大小传递给自定义函数。最后,我们打印存储自定义函数返回值的字符串变量。
#include <iostream> using namespace std; string charToString(char* arr_char, int arr_size) { int i; string j = ""; for(i = 0; i < arr_size; i++) { j = j + arr_char[i]; } return j; } int main() { char char_array[] = {'L','E','A','R','N','F','K'}; int array_size = sizeof(char_array)/sizeof(char); string jtp = ""; jtp = charToString(char_array, array_size); cout << jtp <<endl; return 0; }
输出:
LEARNFK
使用 std ::stringstream 实现将char转换为字符串的最后一种方法。我们使用此函数将输入字符插入缓冲区,然后使用 std ::string 将缓冲区中的字符作为字符串。
#include <iostream> #include <sstream> int main() { char char_array[] = {'L','E','A','R','N','F','K'}; std::string jtp; std::stringstream strStream; strStream << char_array; strStream >> jtp; std::cout << jtp; return 0; }
输出:
LEARNFK
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)
PPT设计进阶 · 从基础操作到高级创意 -〔李金宝(Bobbie)〕