C语言中常用字符串处理函数(总结大全) |
您所在的位置:网站首页 › 字符串的结束标准 › C语言中常用字符串处理函数(总结大全) |
目录
字符串处理函数
1.char *gets(char *s); 2. char *fgets(char *s, intsize, FILE *stream); 3. int puts(const char *s); 4. int fputs(const char *str, FILE *stream); 5. size_t strlen(const char *s); 6. char *strcpy(char *dest, const char *src); 7. char *strncpy(char *dest, const char *src, size_tn); 8. char *strcat(char *dest, const char *src); 9. char *strncat(char *dest, const char *src, size_tn); 10. int strcmp(const char *s1, const char *s2); 11. int strncmp(const char *s1, const char *s2, size_tn); 12. int sprintf(char *str , const char *format, ...); 13. int sscanf(const char *str, const char *format, ...); 14. char *strchr(const char *s, intc); 15. char *strstr(const char *haystack, const char *needle); 16. char *strtok(char *str, const char *delim); 17. int atoi(const char *nptr); 1.char *gets(char *s);#include 功能: 从标准输入读入字符,并保存到s指定的内存空间,直到出现换行符或读到文件结尾为止 参数: s:字符串首地址返回值: 成功:读入的字符串 失败:NULL gets(str)与scanf(“%s”,str)的区别: gets(str)允许输入的字符串含有空格scanf(“%s”,str)不允许含有空格注意: 由于scanf()和gets()无法知道字符串s大小,必须遇到换行符或读到文件结尾为止才接收输入,因此容易导致字符数组越界(缓冲区溢出)的情况。 2. char *fgets(char *s, intsize, FILE *stream); #include 功能: 从stream指定的文件内读入字符,保存到s所指定的内存空间,直到出现换行字符、读到文件结尾或是已读了size - 1个字符为止,最后会自动加上字符 '\0' 作为字符串结束 参数: s:字符串size:指定最大读取字符串的长度(size - 1)stream:文件指针,如果读键盘输入的字符串,固定写为stdin返回值: 成功:成功读取的字符串读到文件尾或出错: NULL描述: fgets()在读取一个用户通过键盘输入的字符串的时候,同时把用户输入的回车也做为字符串的一部分。通过scanf和gets输入一个字符串的时候,不包含结尾的“\n”,但通过fgets结尾多了“\n”。fgets()函数是安全的,不存在缓冲区溢出的问题。 3. int puts(const char *s); #include 功能: 标准设备输出s字符串,在输出完成后自动输出一个'\n'。 参数: s:字符串首地址。 返回值: 成功:非负数失败:-14. int fputs(const char *str, FILE *stream); #include 功能: 将str所指定的字符串写入到stream指定的文件中,字符串结束符'\0'不写入文件。 参数: str:字符串stream:文件指针,如果把字符串输出到屏幕,固定写为stdout。返回值: 成功:0失败:-1注意:fputs()是puts()的文件操作版本,但fputs() 不会自动输出一个'\n'。 5. size_t strlen(const char *s); #include 功能: 计算指定指定字符串s的长度,不包含字符串结束符‘\0’. 参数: s:字符串首地址 返回值: 字符串s的长度,size_t 为unsigned int类型 6. char *strcpy(char *dest, const char *src); #include 功能: 把src所指向的字符串复制到dest所指向的空间中,'\0'也会拷贝过去 参数: dest:目的字符串首地址src:源字符首地址返回值: 成功:返回dest字符串的首地址失败:NULL注意: 如果参数dest所指的内存空间不够大,可能会造成缓冲溢出的错误情况。 7. char *strncpy(char *dest, const char *src, size_tn); #include 功能: 把src指向字符串的前n个字符复制到dest所指向的空间中,是否拷贝结束符看指定的长度是否包含'\0'。 参数: dest:目的字符串首地址src:源字符首地址n:指定需要拷贝字符串个数返回值: 成功:返回dest字符串的首地址失败:NULL8. char *strcat(char *dest, const char *src); #include 功能: 将src字符串连接到dest的尾部,‘\0’也会追加过去 参数: dest:目的字符串首地址src:源字符首地址返回值: 成功:成功:返回dest字符串的首地址失败:NULL9. char *strncat(char *dest, const char *src, size_tn); #include 功能: 将src字符串前n个字符连接到dest的尾部,‘\0’也会追加过去 参数: dest:目的字符串首地址src:源字符首地址n:指定需要追加字符串个数返回值: 成功:成功:返回dest字符串的首地址失败:NULL10. int strcmp(const char *s1, const char *s2); #include 功能: 比较 s1 和 s2 的大小,比较的是字符ASCII码大小。 参数: s1:字符串1首地址s2:字符串2首地址返回值: 相等:0大于:>0小于:0小于: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |