字符串库
来源:互联网 发布:mac如何设置用户头像 编辑:程序博客网 时间:2024/05/17 08:51
String.h库
string.h 头定义了一个变量的类型,操作字符数组的一个宏观和各种功能。
库变量
以下是在头string.h中定义的变量类型:
S.N. 变量和说明
1size_t
这是一个无符号整数类型的sizeof关键字的结果。
库宏
以下是在头string.h中定义的宏:
S.N.宏观与说明
1NULL
这个宏是一个空指针常量的值。
库函数
*以下是头string.h中定义的功能:*
S.N.函数及说明
1.void *memchr(const void *str, int c, size_t n)
搜索第一次出现的字符c(unsigned char类型)的前n个字节的字符串参数str指向。
2 int memcmp(const void *str1, const void *str2, size_t n)
比较str1和str2的前n个字节。
3 void *memcpy(void *dest, const void *src, size_t n)
从src复制n个字符到dest。
4 void *memmove(void *dest, const void *src, size_t n)
另一个函数来复制n个字符到str1。
5 void *memset(void *str, int c, size_t n)
复制字符c(unsigned char类型)的前n个字符的字符串参数str指向。
6 char *strcat(char *dest, const char *src)
追加src指向的字符串到dest指向的字符串的结束。
7 char *strncat(char *dest, const char *src, size_t n)
追加src指向字符串结尾的字符串指向dest中最多n个字符长。
8 char *strchr(const char *str, int c)
搜索第一次出现的字符串中的字符c(unsigned char类型)参数str指向。
9 int strcmp(const char *str1, const char *str2)
比较字符串str1指向指向的字符串str2。
10 int strncmp(const char *str1, const char *str2, size_t n)
str1和str2的前n个字节相比。
11 int strcoll(const char *str1, const char *str2)
比较字符串str1的STR2。其结果是依赖于位置LC_COLLATE设置。
12 char *strcpy(char *dest, const char *src)
复制字符串src指向到dest。
13 char *strncpy(char *dest, const char *src, size_t n)
副本最多n个字符的字符串src指向到dest。
14 size_t strcspn(const char *str1, const char *str2)
计算str1的起始段的长度完全包含在str2中的字符。
15 char *strerror(int errnum)
搜索一个内部数组的错误编号差错编号,并返回一个指向一个错误消息字符串。
16 size_t strlen(const char *str)
计算但不包括终止空字符的字符串str的长度。
17 char *strpbrk(const char *str1, const char *str2)
查找字符串str1在str2中指定的任何字符相匹配的第一个字符。
18 char *strrchr(const char *str, int c)
参数str指向的字符串中的字符c(unsigned char类型)最后一次出现的搜索。
19 size_t strspn(const char *str1, const char *str2)
计算str1中的初始段完全包含在str2中的字符的长度。
20 char *strstr(const char *haystack, const char *needle)
查找第一次出现的整个字符串针(不包括终止空字符)出现在字符串haystack中。
21 char *strtok(char *str, const char *delim)
中断字符串str分隔分离成一系列的记号。
22 size_t strxfrm(char *dest, const char *src, size_t n)
转换前n个字符的字符串src到校报的语言环境和将它们放置字符串dest。
字符串比较的一道题
/*关于字符串比较:编写函数int fun(char *s1,char *s2),在字符串s1中统计字符串s2出现的次数并返回。若s2在s1中未出现,则返回0。例如:若输入的字符串s1为:abaaAabcaabbabca,字符串s2为:ab ,则程序输出:n=4若输入的字符串s1为:abaaAabcaabbabca,字符串s2为:abd,则程序输出:No find#include<stdio.h>#include<string.h>int fun(char *s1,char *s2){}int main(){ char a[80],b[80]; int n; printf("Please input the first string:"); gets(a); printf("Please input the second string:"); gets(b); n=fun(a,b); if(n==0) printf("No find\n"); else printf("n=%d\n",n); return 0;}*/#include<stdio.h>#include<string.h>int fun(char *s1, char *s2){ int strlenth(char *); //int alen = strlenth(s1);先弄错了,自己构造的函数 //int blen = strlenth(s2); int alen = strlen(s1); int blen = strlen(s2); int n = 0; for (int i = 0; i<alen - blen+1; i++) { int f = 0; for (int j = i, k = 0; k<blen; k++, j++) if (s1[j]== s2[k] ) { f++; }; if (f == blen) n++; } return n;}/*int strlenth(char *q){ int i = 0,sum; while(q[i] != '\0') { i++; sum = i; } //printf("长度:%d", sum); return sum;}*/int main(){ char a[80], b[80]; int n; printf("Please input the first string:"); gets_s(a); printf("Please input the second string:"); gets_s(b); n = fun(a, b); if (n == 0) printf("No find\n"); else printf("n=%d\n", n); return 0;}
总结:c语言存在库函数<string.h>
我觉得常用的:strlen函数来确定字符串长度。
strcpy函数复制后面的去前面的地址,
- 字符串库
- 字符串库
- 字符串处理库中的字符串函数
- 【库】c实现字符串
- 【库】c实现字符串
- 字符串类库
- 常用字符串类库
- 字符串处理类库
- 字符串类库
- lua字符串库
- lua 字符串库
- C++库字符串类
- Lua字符串库使用
- 第二十课 字符串库
- 字符串
- 字符串
- 字符串
- 字符串
- HDU 3394 Railway (点双联通分量+桥)
- Linux学习笔记7——umask函数
- 关于阻止scroll()事件多次执行的一个小方法
- nyoj487点数
- HDU3549 ISAP板子题
- 字符串库
- 仿淘宝详细页面图片放大镜的制作过程
- Effective-Java-Note-类和接口
- JavaSE总结-集合框架-List
- 搜索引擎技术之概要预览
- uml类图详解
- Easyui Tree跨域获取数据。
- jQuery从0开始之【二】jQuery使用原则及常用事件
- java读取文件以字节流的形式读取 然后转化为字节流数组,最后经过SHA1加密生成返回16进制字符串存入数据库