字符数组函数(C风格)
发布时间:
#include <cstring> 是C++标准库中的头文件,用于C风格字符串操作的函数和常量。
函数 | 描述 |
---|---|
memcpy(void * dest,const void * src, sizet count) | 【内存拷贝】从src拷贝 count 个字节到 dest |
void * memset( void * dest,int c, sizet count) | 【内存设置】设置 dest 的前count 个字节为字符c |
size_t strlen( string) | 【字符串长度】不包括尾部 NULL |
strstr( string1, string2) | 【字符串包含】string1是否包含string2 |
strcat(字符串名1,字符串名2) | 【字符串连接】将字符串2连接到字符串1后边,返回字符串1的值。 |
strncat(字符串名1,字符串名2,长度n) | 【字符串连接】将字符串2前n个字符连接到字符串1后边,返回字符串1的值。 |
strcpy(字符串名1,字符串名2) | 复制:将字符串2复制到字符串1后边,返回字符串1的值。 |
strncpy(字符串名1,字符串名2,长度n) | 复制: 将字符串2前n个字符复制到字符串1后边,返回字符串1的值。 |
strcmp(字符串名1,字符串名2) | 比较: 比较字符串1和字符串2的大小,比较的结果由函数带回; 如果字符串1>字符串2,返回一个正整数; 如果字符串1=字符串2,返回0; 如果字符串1<字符串2,返回一个负整数; |
strncmp(字符串名1,字符串名2,长度n) | 比较:比较字符串1和字符串2的前n个字符进行比较, 函数返回值的情况同strcmp函数; |
strlen(字符串名) | 长度:计算字符串的长度,终止符’\0’不算在长度之内 |
strlwr(字符串名) | 转小写:将字符串中大写字母换成小写字母 |
strupr(字符串名) | 转大写:将字符串中小写字母换成大写字母 |
string与cstring区别:
- <cstring> 是C语言中的头文件,其中的函数和常量都是以C风格的字符串为参数和返回值。而<string> 是C++中的头文件,其中的类和函数都是以C++的string对象为参数和返回值。
- <cstring> 中的函数和常量都是全局的,需要使用命名空间std::来调用。而<string> 中的类和函数都在std命名空间中,可以直接调用。
- . <cstring> 中的函数和常量都是基于字符数组的操作,需要手动管理内存。而
中的类和函数都是基于string对象的操作,自动管理内存。 - <cstring> 中的函数和常量是C语言中常用的字符串操作函数,如strcpy、strcat、strlen等。而<string> 中的类和函数是C++中对字符串的封装和扩展,提供了更多的功能,如字符串拼接、查找、替换等。
- <cstring> 中的函数和常量在使用时需要注意字符串的结束符'\0'。而<string> 中的类和函数自动处理字符串的结束符,不需要额外的注意。
- 总的来说,<cstring> 是C语言风格的字符串操作头文件,适用于需要与C代码交互或者对字符串的操作较简单的情况。而<string> 是C++风格的字符串操作头文件,提供了更多的功能和便利性,适用于C++程序中对字符串的操作。
- cstring 可以理解为是 C语言库中 #include <string.h>的替换,为了满足某些程序员的使用习惯。