C++笔记(4)——string.h相关的一些小知识
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C++笔记(4)——string.h相关的一些小知识,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1961字,纯文字阅读大概需要3分钟。
内容图文
![C++笔记(4)——string.h相关的一些小知识](/upload/InfoBanner/zyjiaocheng/801/d2aa90e9cc404f4fa7923ca5df59fe7a.jpg)
strlen()
用于得到字符数组中第一个\0
前的字符的个数,格式如下:
strlen(数组);
例子:
#include <stdio.h>
#include <string.h>
int main(){
char str[10];
gets(str);
int len = strlen(str);
printf("%d\n", len);
return 0;
}
输入:
ababab
输出:
6
strcmp()
用于比较字符串大小,比较原则是按照字典序:
strcmp(字符数组1, 字符数组2)
如果数组1长则返回正数,数组2长则返回负数,相等返回0。
#include <stdio.h>
#include <string.h>
int main(){
char str1[50], str2[50];
gets(str1);
gets(str2);
int cmp = strcmp(str1, str2);
if(cmp < 0) printf("str1 < str2\n");
else if (cmp > 0) printf("str1 > str2\n");
else printf("str1 == str2\n");
return 0;
}
上图中前两行是输入,最后一行是输出。
strcpy()
复制字符串给另一个字符串,用法:strcpy(str1, str2)
。这样会把str2
内容复制到str1
。
示例:
#include <stdio.h>
#include <string.h>
int main(){
char str1[50], str2[50];
gets(str1);
gets(str2);
strcpy(str1, str2);
puts(str1);
return 0;
}
strcat()
拼接两个字符串,strcat(str1, str2)
,
#include <stdio.h>
#include <string.h>
int main(){
char str1[50], str2[50];
gets(str1);
gets(str2);
strcat(str1, str2);
puts(str1);
return 0;
}
sscanf与sprintf
sscanf
与sprintf
是专门用于处理字符串的,可以理解为“string + scanf”和“string + printf”。
用法就类似于在内存上以scanf
和printf
的方式将数据进行传递。举个例子,sscanf(str, "%d", &n);
,这就是将str中内容以%d
的格式写入到n中(可以这样理解,scanf(screen, "%d", &n);
相当于是从screen屏幕捕获输入并输入到n中,从左到右,而sscanf
起到的作用就差不多这样,从str按照"%d"
的格式输入到n。sprintf
则反过来,从右往左)。
比较简单,直接上示例:
#include <stdio.h>
int main() {
int n;
char str[100] = "123";
sscanf(str, "%d", &n);
printf("%d\n", n);
return 0;
}
#include <stdio.h>
int main(){
int n = 233;
char str[100];
sprintf(str, "%d", n);
printf("%s\n", str);
return 0;
}
复杂点的例子:
#include <stdio.h>
int main(){
int n;
double db;
char str[100] = "2048:3.14, hello", str2[100];
sscanf(str, "%d:%lf, %s", &n, &db, str2);
printf("n = %d, db = %.2f, str2 = %s\n", n, db, str2);
return 0;
}
在字符串处理的时候相当有用。
内容总结
以上是互联网集市为您收集整理的C++笔记(4)——string.h相关的一些小知识全部内容,希望文章能够帮你解决C++笔记(4)——string.h相关的一些小知识所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。