• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++字符串操作

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

cstring 里面包含有操作空字符结尾的函数。

 1 #include <iostream>
 2 #include <cstring>
 3 using namespace std;
 4 int main(){
 5     char str1[50]="He is my best friend";
 6     char* str2="He is not my best friend";
 7     cout<<"The strings that you typed is: "<<endl
 8         <<str1<<endl<<str2<<endl;
 9     //输出两个字串的长度
10     cout<<"Their length is "<<strlen(str1)<<" and "<<strlen(str2)<<endl;
11     //将str2合到str1里面
12     cout<<"After strcat str1 now is \n"<<strcat(str1,str2)<<endl;
13     //比较
14     cout<<"Comparing result is "<<strcmp(str1,str2)<<endl;
15     //将str2复制到str1里面
16     cout<<"After copy str1 now is \n"<<strcpy(str1,str2)<<endl;    
17     return 0;
18 }

 

1. 确定长度

用strlen()确定数学的长度。

 

2. 连接

  • strcat(str1,str2) 把str2连接到str1上面。
  • strncat(str1,str2,num) 意思是 把str2的前Num个字符 连接到str1上面。

strcat_s(), strncat_s() 为以上两个的安全替换策略。因为上述 字符串都是以'\0'结尾的。

以上两种函数的返回值都是第一个字串的首地址,因而可以直接用cout 进行流输出

 

3. 复制

strcpy(str1,str2) 把str2复制到str1里面,并且返回str1的首地址。

strcpy_s()为安全替换策略。

 

4. 比较

strcmp(str1,str2) str1 小于 str2 范围值也将小于0   其他类推。

 

5. 搜索

strspn(str1,str2) 在str1中搜索出 没有出现在str2 的第一个字符。

1 #include <iostream>
2 #include <cstring>
3 using namespace std;
4 int main(){
5     char* str1="i earn money";
6     char* str2="aeiou ";
7     cout<<strspn(str1,str2);
8     return 0;
9 }

str1 是一句话,str2是aeiou他们都是元音字母。该程序的目的是为了 找到str1中第一个不是元音字母的位置 

很明显,第一个不是元音字母的字符是字母'r',因而,输出其所在位置4

strstr(str,substr)  返回str中找到substr的字串的地址

1 #include <iostream>
2 #include <cstring>
3 using namespace std;
4 int main(){
5     char* str1="How do you know that I love you";
6     char* str2="now";
7     cout<<strstr(str1,str2);
8     return 0;
9 }

str1中第一次出现 now 三个字符的地方是str1里面的 know的 位置,因为直接输出流的时候,就从那个地方开始打印。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#时间戳转换为时间格式发布时间:2022-07-13
下一篇:
C#常量字段发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap