c++ 汉字字符处理

一、字符串输出

汉字的存储与操作系统环境有很大关系。
如果操作系统字符集是gbk,则一个汉字由两个字节组成。
如果操作系统字符集是utf8,则一个汉字由三个字节组成。

windows查看系统字符集:chcp
linux查看系统字符集:locale

知道本机字符集,就可以按规则输出一个一个的汉字了。

以gbk字符集为例:(如果是utf8字符集,则输出连续三个字节)

string str = "中华人民共和国";
for (int i = 0; i < str.size(); i = i + 2)
	cout << i << str[i] << str[i + 1];

二、字符数组输出

将每个汉字看作是一个字符串,将它们存储在字符数组中。
读取的时候当作简单字符串读取就可。

string str[7] = { "中", "华", "人", "民", "共", "和", "国"};
for (int i = 0; i < 7; i++)
	cout << str[i];

你可能感兴趣的:(基本算法知识)