字符型经验分享

今天来带大家看一看,字符型的使用。

1. 字节数

在C++语言中,字符型变量只占1个字节。

2.字符型的关键字

char 类型
string 类型
wchar_t 类型
wstring 类型

3.ASCII表格:

建议查看 Ascii完整码表(256个)_ascii码表-CSDN博客的博客。

4.转义字符

表示一些特殊的无法直接显示的ASCII字符
常用的转义字符有:\n \t
tips: C语言中使用转义字符\n 换行,C++中使用endl 换行, 表示水平制表符的转义符\t 占据8个字符宽度。

5.字符型变量

作用 :字符型变量可表示单个字符
如: char ch = 'a';
而且,(int) ch可以查看ch字符的ASCII码。

6.字符串

字符串表示一串字符。
定义方式: char ch[1005] or string ch

7.wchar_t类型

其他类型已经很熟悉了,但wchar_t类型是什么呢?
其实,这种类型代表汉字类型,我们使用wchar_t定义时,就可以输入汉字了。当然,wstring同理。
如题目 NOIP2001-J-3-求先序排列
正解:

#include <bits/stdc++.h>
using namespace std;
string mi,pr;
void dfs(string mi,string pr){
    if(pr.size()==0){
    	return;
	}
	char root=pr[pr.size()-1];
	int k=mi.find(root);
	cout<<root;
	dfs(mi.substr(0,k),pr.substr(0,k));
	dfs(mi.substr(k+1),pr.substr(k,pr.size()-1-k));
}
int main(){
    cin>>mi>>pr;
    dfs(mi,pr);
    return 0;
}

但是使用wchar_t与wstring后的解决:

#include <bits/stdc++.h>
using namespace std;
wstring mi,pr;
void dfs(wstring mi,wstring pr){
    if(pr.size()==0){
    	return;
	}
	wchar_t root=pr[pr.size()-1];
	int k=mi.find(root);
	cout<<char(root);//这个位置直接输出root会输出root的ASCII码
	dfs(mi.substr(0,k),pr.substr(0,k));
	dfs(mi.substr(k+1),pr.substr(k,pr.size()-1-k));
}
int main(){
    wcin>>mi>>pr;
    dfs(mi,pr);
    return 0;
}

8.函数

各类型有着自己的函数。
如:

int len=strlen(c);//将字符串c的长度保存在len里
cin.getline(c,256);//将字符串c输入,而且输入可以有空格

手打不宜,——点赞!!!——

8 个赞

有用,赞了