C语言 常用函数总结

来源:互联网 发布:focusky for mac中文 编辑:程序博客网 时间:2024/05/17 01:34

string.h

  • char *strcpy(char *s1,const char *s2);
    该函数把s2指向的字符串(包括控制符)复制到s1指向的位置,返回 值是s1.

  • char *strncpy(char *s1,const char *s2, size_t n);
    该函数把s2指向的字符串复制到s1指向的位置,复制的字符数不超过n个。返回值s1。空字符后的字符不被复制。如果源字符串的字符数少于n个,在目标字符串中就以控制符填充。如果源字符串的字符数大于或者等于n个,控制符就不被复制。返回值是s1.

  • char *strcat(char *s1,const char *s2);
    s2指向的字符串被复制到s1指向字符串的结尾。复制过来的s2所指的字符串的第一个字符覆盖了s1所指字符串结尾的空字符。返回值是s1.
  • char *strncat(char *s1,const char *s2,size_t n);
    s2字符串中只有前n个字符被追加到s1字符串,复制过来的s2字符串的第一个字符覆盖了s1字符串结尾的空字符。s2字符串中的空字符及其后面的任何字符都不会复制,并且追加一个空字符到所得结果后面。返回值是s1.

  • int strcmp(const char *s1,const char *s2);
    如果s1字符串在机器编码顺序中落后于s2字符串,函数的返回值是一个正数;如果两个字符串相同,返回值是0;如果第一个字符串在机器编码顺序中先于第二个字符串,返回值是一个负数。

  • int strncmp(const char *s1, const char *s2, size_t n);
    该函数的作用和strcmp一样,只是比较n个字符后或者遇见第一个空字符时会停止比较,由两者中最先满足的那一个天剑终止比较过程。

  • char *strchr(const char *s, int ch);
    该函数返回一个指向字符串s中存放字符C的第一个位置的指针(标志结束的空字符是字符串的一部分,因此可以搜索到它)。如果没有找到该字符,函数返回空指针。
  • char * strpbrk(const char *s1, const char *s2);
    该函数返回一个指针,指向字符串s1中存放s2字符串中的任何字符的第一个位置。如果没有找到任何字符,函数就返回空指针。
  • char *strstr(const char *s1, const char *s2);
    该函数返回一个指针,指向s1字符串中第一次出现s2字符串的地方。如果在s1中没有找到s2字符串,函数就返回空指针。
  • size_t strlen(const char *s);
    该函数返回s字符串中的字符个数,其中不包括标志结束的空字符。

  • void *memcpy(void *dest, const void *src, size_t n);

  • void *memmove(void *dest, const void *src, size_t n);

stdio.h

  • stdout
  • stdin
  • stderr

  • sprintf(char *str, const char *format, …)

  • fprintf(FILE *stream, const char *format, …)
  • int fgetc(FILE *stream);
  • int fputc(int c, FILE *stream);
  • char *fgets(char *s, int size, FILE *stream);
  • int fscanf(FILE *stream, const char *format, …);
  • int fputs(const char *s, FILE *stream);

stdlib.h

  • double atof(const char *str)
    把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。

  • int atoi(const char *str)
    把参数 str 所指向的字符串转换为一个整数(类型为 int 型)。

  • long int atol(const char *str)
    把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)。

  • double strtod(const char *str, char **endptr)
    把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。

  • long int strtol(const char *str, char **endptr, int base)
    把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)

  • unsigned long int strtoul(const char *str, char **endptr, int base)
    把参数 str 所指向的字符串转换为一个无符号长整数(类型为 unsigned long int 型)。

  • void *calloc(size_t nitems, size_t size)
    分配所需的内存空间,并返回一个指向它的指针。

  • void free(void *ptr)
    释放之前调用 calloc、malloc 或 realloc 所分配的内存空间。

  • void *malloc(size_t size)
    分配所需的内存空间,并返回一个指向它的指针。

  • void *realloc(void *ptr, size_t size)
    尝试重新调整之前调用 malloc 或 calloc 所分配的 ptr 所指向的内存块的大小。

  • void abort(void)
    使一个异常程序终止。

  • int atexit(void (*func)(void))
    当程序正常终止时,调用指定的函数 func。

  • void exit(int status)
    使程序正常终止。

  • char *getenv(const char *name)
    搜索 name 所指向的环境字符串,并返回相关的值给字符串。

  • int system(const char *string)
    由 string 指定的命令传给要被命令处理器执行的主机环境。

  • void bsearch(const void *key, const void *base, size_t nitems, size_t size, int (*compar)(const void , const void *))
    执行二分查找。

  • void qsort(void base, size_t nitems, size_t size, int (*compar)(const void , const void*))
    数组排序。

  • int abs(int x)
    返回 x 的绝对值。

  • div_t div(int numer, int denom)
    分子除以分母。

  • long int labs(long int x)
    返回 x 的绝对值。

  • ldiv_t ldiv(long int numer, long int denom)
    分子除以分母。

  • int rand(void)
    返回一个范围在 0 到 RAND_MAX 之间的伪随机数。

  • void srand(unsigned int seed)
    该函数播种由函数 rand 使用的随机数发生器。

  • int mblen(const char *str, size_t n)
    返回参数 str 所指向的多字节字符的长度。

  • size_t mbstowcs(schar_t *pwcs, const char *str, size_t n)
    把参数 str 所指向的多字节字符的字符串转换为参数 pwcs 所指向的数组。

  • int mbtowc(whcar_t *pwc, const char *str, size_t n)
    检查参数 str 所指向的多字节字符。

  • size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)
    把数组 pwcs 中存储的编码转换为多字节字符,并把它们存储在字符串 str 中。

  • int wctomb(char *str, wchar_t wchar)
    检查对应于参数 wchar 所给出的多字节字符的编码。

ctype.h

  • int toupper(int c);
  • int tolower(int c);
  • int isalnum(int c);
  • int isalpha(int c);
  • int isascii(int c);
  • int isblank(int c);
  • int iscntrl(int c);
  • int isdigit(int c);
  • int isgraph(int c);
  • int islower(int c);
  • int isprint(int c);
  • int ispunct(int c);
  • int isspace(int c);
  • int isupper(int c);
  • int isxdigit(int c);