字符串要点

1.常用ASCII值:

(1)‘A’- 'Z’是65 ~ 90
(2)‘a’ - 'z’是97 - 122
(3)0 - 9是 48 - 57
(4)a与A相差32 
(5)空字符('\0')为0

注:字符串结束符为'\0',由于字符串比字符数组多'\0',所以定义字符数组时长度要比字符串至少多1

2、输入字符串:string 类型的变量就是用来存放字符串的,也叫“string对象”。string 并不是 C++ 的基本数据类型,它是 C++ 标准模板库中的一个“类”。string不能用scanf读入,可以用printf输出,string可以用cin读入,cout输出,可以用“+”将两个字符串连接。

(1)不可读入空格:

scanf("%s",str);

cin>>str+1;//从下标1开始读入

char s[100];

cin.getline(s,100);

(2)可读入空格:

gets(str);

char s[100];

fgets(s,100,stdin);

String s;

getline(cin,s);

3.输出字符串:

puts(str);

printf("%s",str);

cout<<s+1<<endl;(从下标1开始输出)

......

4、字符串函数

(1)求长度

int l=strlen(str);

int l=str.size();

int l=str.length();

注:求二维字符数组列数

int l=str.length;

(2)复制(拷贝)

strcpy(str1,str2);

s="abc";

(3)连接

strcat(str1,str2);

s.append(str);

s=s+str;

(4)比较

strcmp(str1,str2);

若相等,返回0;若不相等,则返回字符串中不相同字符的差。

(5)插入

s.insert( position,n,char); //在某位置插入n个字符

s.insert(pos,str);

s.insert(pos,str,a,n);

(6)判断为空

s.empty();

(7)清除

s.clear();

5、字符串常量与字符常量
注意,字符串常量(使用双引号)不能与字符常量(使用单引号)互换。字符常量(如'S')是字符串编码的简写表示。在ASCII系统上,'S'只是83的另一种写法。但"S"不是字符常量,它表示的是"S\0"。"S"实际上表示的是字符串所在的内存地址。

下面所有的输出语句都是等效的:


注意,拼接时不会在被连接的字符串之间添加空格,第二个字符串的第一个字符将紧跟在第一个字符串的最后一个字符(不考虑\0)后面。第一个字符串中的\0字符将被第二个字符串的第一个字符取代。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值