gets(char *s) |
stdio.h |
从标准输入读入字符,并保存到s指定的内存空间,直到出现换行符或者读到文件结尾为止,注意,gets()允许输入的字符串含有空格,而scranf()不允许 |
成功:读入的字符串;失败:NULL |
char *fgets(char *s, int size, FILE *stream) |
stdio.h |
从 stream 流中读取 size 个字符存储到字符指针变量s 所指向的内存空间 |
它的返回值是一个指针,指向字符串中第一个字符的地址 |
strlen(const char *s) |
string.h |
计算指定字符串s的长度,不包含字符串结束符'\0' |
字符串的长度 |
strcpy(char *dest, const char *src) |
string.h |
把src所指向字符串拷贝到dest所指向空间中,结束符是'\0';而strncpy() 则不会遇到'\0'就停止拷贝,它可以拷贝'\0',但是仍然不能拷贝'\0'之后的内容 |
成功则返回dest字符串首地址,失败返回NULL |
strcmp(const char *s1, const char *s2) |
string.h |
比较s1和s2的大小,比较原则是按顺序比较每个字符的ASCII码的大小,直至某个字符比较出大小即为两字符串大小比较的结果 |
相等:0;大于:>0;小于:<0 |
strcat(char *dest, const char *src) |
string.h |
把src所指向字符串拼接到dest所指向字符串之后 |
成功则返回dest字符串首地址,失败返回NULL |
char *strchr(const char *s, int c) |
string.h |
在字符串s中查找字母c出现的位置,其中s是字符串首地址,c是待匹配字母(字符) |
成功则返回第一次出现c的地址,失败返回NULL |
char *strstr(const char *haystack, const char *needle) |
string.h |
在字符串haystack中查找字符串needle出现的位置 |
成功返回第一次出现needle的地址,失败返回NULL |
char *strtok(char *str, const char *delim) |
string.h |
将字符串分割成一个个片段。当strtok()在参数str的字符串中发现参数delim中包含的字符时,则会将该字符修改为\0 字符,连续出现多个时只替换第一个 |
返回切割后的字符串,没有切割成功则返回NULL |
int atoi(const char *nptr) |
stdlib.h |
atoi函数会扫描nptr字符串,跳过前面的空格字符,直到遇到数字或者正负号才开始做转换,而遇到非数字或字符串结束符\0 才结束转换并将结果返回返回值,类似的函数还有atof()将一个小数形式的字符串转换为一个浮点数atol()将一个字符串转换为long类型 |
成功转换后的整数,注意在转换时,输入的字符只能以空格、正负号或者数字开头 |