您的位置:首页 > 编程语言 > C语言/C++

【C++】cstring里面的函数简介

2014-11-05 23:52 225 查看
函数 strcpy

原型: char* strcpy (char*s1, const char *s2);

作用:将字符串
2复制到字符数组 1当中去

说明:

字符数组 1的长度应不小于字符串2的长度

"字符数组 1"必须写成数组名形式,"字符串
2" 可以为字符数组名,也可以是一个字符串常量

在未对字符数组 1赋初值时,复制时将
"字符串 2"中的字符串和其后的
"/0"一起复制到字符数组 1中,取代其前
n+1 个字符,而后面的字符是
"字符数组 1"原字符

函数 strncpy

原型: char* strncpy(char *s1, const char *s2, size_t len);

作用:将
s2的前 len个字符复制到
s1中指定的地址,不加
'\0'

函数 memcpy 

原型: void* memcpy (void*s1, const void *s2, size_t len);

作用:将
s2的前 len个字节复制到
s1中指定的地址,不加
'\0'

说明:源和目的不能是同一块内存区域

函数 memmove 

原型: void* memmove (void*s1, const void *s2, size_t len);

作用:当源单元和目的单元缓冲区交迭时使用

说明:源和目的可以是同一块内存区域(例如数组某个元素在数组存储器内部移动数据)

函数 strxfrm

原型: size_t strxfrm(char *s1, const char *s1, size_t len);

作用:根据程序当前的区域选项,将
s2 的前 len个字符(字节)复制到
s1 中指定的地址,不加
'\0'

函数 strcat 

原型: char* strcat(char *s1, const char *s2);

作用:把字符串
2接到字符串 1后面(字符串
1要足够大)

说明:连接前两个字符串都有
"/0" ,连接时将字符串1后
"/0" 丢弃,只在新字符串后保留
'/0'

函数 strncat 

原型:char* strncat (char*s1, const char *s2, size_t len);

作用:将字符串
s2的前 len个字符连接到
s1尾部,不加
'\0'

函数 strcmp 

原型: int strcmp(const char *s1, const char *s2);①作用:比较字符串1与字符串2

规律:两个字符串自左至右逐个字符相比(按
ASCII 码值大小比较)直到出现不同的字符或者遇到
"/0" 为止,如果全部字符相同,则认为相等,若出现不同字符,则以第一个不相同的字符为准

准则:

如果字符串 1=字符串
2,函数返回值为 0

如果字符串 1>字符串
2,函数返回值为正数

如果字符串1<字符串
2,函数返回值为负数

函数 strncmp

原型: int strncmp(const char *s1, const char *s2, size_t len);

作用:对
s1和 s2的前len个字符作比较

函数 memcmp

原型: int memcmp(const void *s1, const void *s2, size_t len);

作用:对
s1和 s2的前
len个字节作比较

函数 strcoll

原型: int strcoll(const char *s1, const char *s2);

作用:根据程序当前的区域选项中的
LC_COLLATE,比较字符串 s1和
s2

函数 strchr

原型: char* strchr(const char *s, int ch);

作用:在
s中查找给定字符 ch第一次出现的位置

函数 memchr

原型: void* memchr(const void *s, int ch, size_t len);

作用:查找在字符串中最后一次出现字符
’ch’的位置。如果 s中存在字符
ch,返回出现 ch的位置的指针;否则返回NULL。

函数 strrchr

原型: char* strrchr(const char *s, int ch);

作用:在串
s中查找给定字符 ch最后一次出现的位置,
r表示从串尾开始

函数 strstr

原型: char* strstr(const char *s1, const char *s2);

作用:在串
s1中查找指定字符串 s2第一次出现的位置

函数 strspn

原型: size_t strspn(const char *s1, const char *s2);

作用:返回一个长度,这个长度是在
s1中没有出现 s2任意字符的从
s1头计算的字符串的长度。

函数 strcspn

原型: size_t strcspn(const char *s1, const char *s2);

作用:返回一个长度,这个长度是在
s1中没有出现 s2任意字符的从
s1头计算的字符串的长度。

函数 strpbrk

原型: char* strpbrk(const char *s1, const char *s2);

作用:与
strcspn类似,区别是返回指针而不是索引

函数 strtok

原型: char* strtok(char *s1, const char *s2);

函数执行步骤:

从串s1中分离出由串
s2 中指定的分界符分隔开的记号(token)

第一次调用时 s1为需分割的字串,此后每次调用都将
s1置为 NULL,

每次调用 strtok返回一个记号,直到返回
NULL为止

作用:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。实质上的处理是,strtok在
s中查找包含在 delim中的字符并用
NULL(’\0′)来替换,直到找遍整个字符串。

返回值:
s开头开始的一个个被分割的串。当没有被分割的串时则返回 NULL。所有 delim中包含的字符都会被滤掉,并将被滤掉的地方设为一处分割的节点。

函数 strlen

原型: size_t strlen(const char *s);

作用:它是测试字符串长度的函数,函数的值为字符串中的实际长度(不包括
"/0")

函数 memset

原型: void* memset(void *s, int val, size_t len);

作用:将从
s开始的 len个字节置为
val

函数 strerror

原型: char* strerror(int errno);

作用:返回指向错误信息字符串的指针

函数 _strlwr

原型: char *_strlwr(char *string );

作用:把字符串中的大写字母换成小写字母

函数 _strupr

原型: char *_strupr(char *string );

作用:把字符串中的小写字母换成大写字母

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: