c++学习(7)--字符串
2021/12/13 22:49:53
本文主要是介绍c++学习(7)--字符串,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录
1,字符串赋值
2,字符串空间的区别
3,字符串计算长度
4.复制----- strcpy、strcpy_s、strncpy、strncpy_s
5,拼接----strcat、strcat_s、strncat、strncat_s
6,字符串比较---strcmp
7,字符串查找---strstr
8,键盘输入字符串----getchar
9,键盘输入--conio.h中的getch()或getche()
10,键盘输入字符串---gets、gets_s
1,字符串赋值
char zifu[]={'a','b','c'}; char zifu1[]={'abc'}----------俩种同样的方法,这种方法简单 printf("%s\n",zifu);-------%s表示字符串,这种方式打印出来,会发新有很多乱码的情况 ----------------- char zifu[]={'a','b','c','\0'};------在最后面设置一个\0,用来结束对字符的搜索 -----------------
2,字符串空间的区别
char str1[]="hello"; char str2[]="hello";--------这个hello储存的位置是堆栈区,每次的位置也是不一样的 char *p1="hello"; char *p2="hello";------------p1,p2是指针,他指向一个空间,在这里面这个hello表示的是常量,在常常数区,p1,p2指向的也就是用一个存有hello的地址
3,字符串计算长度
char str1[] ="Hello"; char *p1="Hello"; printf("%d\n", strlen(str1));--------strlen()计算字符串长度 printf("%d\n", strlen(p1) )4.复制----- strcpy、strcpy_s、strncpy、strncpy_s
char *p='123456'; char a[20]; strcpy(a,p);--------------将p指向的空间字符串复制到a的空间中 strcpy(a,'hello');------------------将hello复制到a中 strcpy_s(a,20,p);----------将p指向的内容复制到a中,并且a的存储范围是20 p指向的内容不能超过a的设置范围 ----------------------- char b[20]={'0'}; strncpy(a,'hello world',8);-------将hello world 中前八个字节复制到a中 strncpy_s(a,10,'hello world',8);10----设置a的存储空间为10,8为取前八个字节
5,拼接----strcat、strcat_s、strncat、strncat_s
char a[20]={'hello'}; char *p={'hi'}; strcat(a,p);------将hi拼接到hello后面----hello hi strcat_s(a,20,p)------对20进行空间设置,保障安全 strncat(a,p,1);//只把p指向字符串的 1 个长度的字符串连接到a数组-----hello h strncat_s(a,15,p,1);// 实参15 即保证 a 具有的保障性的空间大小
6,字符串比较---strcmp
功能:字符串比较函数,返回 1 代表 大于关系 ; 返回 0 代表等于关系;返回 -1 代表小于关系。 char a[2]={'a'}; char b[2]={'b'}; srccmp(a,b)------对a,b进行比较7,字符串查找---strstr
char str1[]="abcdefg"; char *str2="b"; char *p ; p = strstr(str1,str2);//在第一个字符串中找第二个字符串首次出现的指针并返回 printf("%c\n",*p );//输出p指向的字符 printf("%s\n", p );//输出从p开始的字符串
8,键盘输入字符串----getchar
c=getchar();//从键盘缓冲区读取一个输入的字符 printf("%c\n",c); //对比scanf的用法区别 scanf("%c",&c); printf("%c\n",c);
9,键盘输入--conio.h中的getch()或getche()
char c; c=getch(); //不回显你输入的字符 printf("你输入了:%c\n",c); c=getche();//回显你输入的字符 printf("你输入了:%c\n",c)
10,键盘输入字符串---gets、gets_s
char a[300]; gets(a);//<经典版>从键盘缓冲区读取一行字符放入到a数组 printf("%s\n",a); gets_s(a,10);//<安全版>从键盘缓冲区读取一行字符放入到a数组,10代表缓冲区的大小 超出提示错误 printf("%s\n",a); //对比scanf scanf("%s",a); printf("%s\n",a);
这篇关于c++学习(7)--字符串的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01lip-sync公司指南:一文读懂主要玩家和技术
- 2024-11-01Anthropic的新RAG方法——提升大型语言模型在特定领域的表现
- 2024-11-01UniApp 中组件的生命周期是多少-icode9专业技术文章分享
- 2024-11-01如何使用Svg Sprite Icon简化网页图标管理
- 2024-10-31Excel数据导出课程:新手从入门到精通的实用教程
- 2024-10-31Excel数据导入课程:新手入门指南
- 2024-10-31RBAC的权限课程:新手入门教程
- 2024-10-31Svg Sprite Icon课程:新手入门必备指南
- 2024-10-31怎么配置 L2TP 允许多用户连接-icode9专业技术文章分享
- 2024-10-31怎么在FreeBSD上 安装 OpenResty-icode9专业技术文章分享