#include <stdio.h>
//printf();
//scanf()
如果是1个参数,成功读取,返回1,如果是两个参数,成功读取,返回2,如果读取不成功,返回0;
//gets()
读取字符串,并且舍弃换行。常于puts()配对使用。
//puts(地址)
只显示字符串,而且自动在显示的字符串末尾加上换行符。
//fgets(目标字符串数组,大小,设备)
读取字符串,末尾加上换行符,可以从不同设备读取,如键盘(stdin)、文件等,该函数只读取 大小-1 个字符
//fputs(要输出的字符串数组,设备)
显示字符串到不同设备,如显示器(stdout),文件等,该函数不会在末尾添加换行符。
//gets_s(目标字符串数组,大小)
只能从键盘读取字符串,所以没有设备参数,如果遇到换行符会丢弃,如果gets_s()读到最大字符数都没有读到换行符, 会执行以下几步。 首先把目标数组中的首字符设置为空字符, 读取并丢弃随后的输入直至读到换行符或文件结尾, 然后返回空指针。 接着, 调用依赖实现的“处理函数”(或你选择的其他函数) , 可能会中止或退出程序。这个函数有的编译器不支持。
//sprintf();
#include <float.h>
提供浮点类型大小限制相关的详细信息,如:FLT_DIG,FLT_MAX,详参C primer plus 第六版P78
#include <limits.h>
提供整数类型大小限制相关的详细信息,如:CHAR_MAX LONG_MAX,详参C primer plus 第六版P78
#include <string.h>
//char *strcpy(char * restrict s1, const char * restrict s2);
该函数把s2指向的字符串(包括空字符) 拷贝至s1指向的位置, 返回值是s1。
//char *strncpy(char * restrict s1, const char * restrict s2, size_t n);
该函数把s2指向的字符串拷贝至s1指向的位置, 拷贝的字符数不超过n, 其返回值是s1。 该函数不会拷贝空字符后面的字符, 如果源字符串的字符少于n个, 目标字符串就以拷贝的空字符结尾; 如果源字符串有n个或超过n个字符, 就不拷贝空字符。
//char *strcat(char * restrict s1, const char * restrict s2);
该函数把s2指向的字符串拷贝至s1指向的字符串末尾。 s2字符串的第1个字符将覆盖s1字符串末尾的空字符。 该函数返回s1。
//char *strncat(char * restrict s1, const char * restrict s2, size_t n);
该函数把s2字符串中的n个字符拷贝至s1字符串末尾。 s2字符串的第1个字符将覆盖s1字符串末尾的空字符。 不会拷贝s2字符串中空字符和其后的字符, 并在拷贝字符的末尾添加一个空字符。 该函数返回s1。
//int strcmp(const char * s1, const char * s2);
如果s1字符串在机器排序序列中位于s2字符串的后面, 该函数返回一个正数; 如果两个字符串相等, 则返回0; 如果s1字符串在机器排序序列中位于s2字符串的前面, 则返回一个负数。
//int strncmp(const char * s1, const char * s2, size_t n);
该函数的作用和strcmp()类似, 不同的是, 该函数在比较n个字符后或遇到第1个空字符时停止比较。
//char *strchr(const char * s, int c);
如果s字符串中包含c字符, 该函数返回指向s字符串首次出现c字符的指针(末尾的空字符也是字符串的一部分, 所以在查找范围内) ; 如果在字符串s中未找到c字符, 该函数则返回空指针。
//char *strpbrk(const char * s1, const char * s2);
如果 s1 字符中包含 s2 字符串中的任意字符, 该函数返回指向 s1 字符串首位置的指针; 如果在s1字符串中未找到任何s2字符串中的字符, 则返回空字符。
//char *strrchr(const char * s, int c);
该函数返回s字符串中c字符的最后一次出现的位置(末尾的空字符也是字符串的一部分, 所以在查找范围内) 。 如果未找到c字符, 则返回空指针。
//char *strstr(const char * s1, const char * s2);
该函数返回指向s1字符串中s2字符串出现的首位置。 如果在s1中没有找到s2, 则返回空指针。
//size_t strlen(const char * s);
该函数返回s字符串中的字符数, 不包括末尾的空字符。
#include <ctype.h>
//isupper(),判断大写字母;
//islower(),判断小写字母;
//isalpha(),判断字母,如果小写字母,返回2,如果大写字母,返回1,如果不是字母,返回0;
//ispunct(),判断是否标点符号;
#include<stdlib.h>
//atoi(),把字符串转换为整型;
//atof(),把字符串转换为double型;
//atol(),把字符串转换为long整型;
//strtol(),把字符串转换为long整型;
//strtoul(),把字符串转换为unsigned long型;
//strtod(),把字符串转换为double型;
以上函数参见《C PRIMER PLUS》第六版P365页,11.9