關閉→
當前位置:知科普>IT科技>c語言函數大全及詳解

c語言函數大全及詳解

知科普 人氣:1.9W

一. <ctype.h>

函數原型功能

int iscntrl(int c)判斷字符c是否為控制字符。

int isalnum(int c)判斷字符c是否為字母或數字

int isalpha(int c)判斷字符c是否為英文字母

int isascii(int c)判斷字符c是否為ascii碼

int isblank(int c)判斷字符c是否為TAB或空格

int isdigit(int c)判斷字符c是否為數字

int isgraph(int c)判斷字符c是否為除空格外的可打印字符

int islower(int c)判斷字符c是否為小寫英文字母

int isprint(int c)判斷字符c是否為可打印字符(含空格)

int ispunct(int c)判斷字符c是否為標點符號

int isspace(int c)判斷字符c是否為空白符

int isupper(int c)判斷字符c是否為大寫英文字母

int isxdigit(int c)判斷字符c是否為十六進制數字

int toascii(int c)將字符c轉換為ascii碼

int tolower(int c)將字符c轉換為小寫英文字母

int toupper(int c);將字符c轉換為大寫英文字母

c語言函數大全及詳解

二. <math.h>

函數原型功能

float fabs(float x)求浮點數x的絕對值

int abs(int x)求整數x的絕對值

float acos(float x)求x(弧度表示)的反餘弦值

float asin(float x)求x(弧度表示)的反正弦值

float atan(float x)求x(弧度表示)的反正切值

float atan2(float y, float x)求y/x(弧度表示)的反正切值

float ceil(float x)求不小於x的最小整數

float cos(float x)求x(弧度表示)的餘弦值

float cosh(float x)求x的雙曲餘弦值

float exp(float x)求e的x次冪

float floor(float x)求不大於x的最大整數

float fmod(float x, float y)計算x/y的餘數

float frexp(float x, int *exp)把浮點數x分解成尾數和指數

float ldexp(float x, int exp)返回x*2^exp的值

float modf(float num, float *i)將浮點數num分解成整數部分和小數部分

float hypot(float x, float y)對於給定的直角三角形的兩個直角邊,求其斜邊的長度

float log(float x)計算x的自然對數

float log10(float x)計算x的常用對數

float pow(float x, float y)計算x的y次冪

float pow10(float x)計算10的x次冪

float sin(float x)計算x(弧度表示)的正弦值

float sinh(float x)計算x(弧度表示)的雙曲正弦值

float sqrt(float x)計算x的平方根

float tan(float x);計算x(弧度表示)的正切值

float tanh(float x)求x的雙曲正切值

c語言函數大全及詳解 第2張

三. <stdio.h>

函數原型功能

int printf(char *format...)產生格式化輸出的函數

int getchar(void)從鍵盤上讀取一個鍵,並返回該鍵的鍵值

int putchar(char c)在屏幕上顯示字符c

FILE *fopen(char *filename, char *type)打開一個文件

FILE *freopen(char *filename, char *type,FILE *fp)打開一個文件,並將該文件關聯到fp指定的流

int fflush(FILE *stream)清除一個流

int fclose(FILE *stream)關閉一個文件

int remove(char *filename)刪除一個文件

int rename(char *oldname, char *newname)重命名文件

FILE *tmpfile(void)以二進制方式打開暫存文件

char *tmpnam(char *sptr)創建一個唯一的文件名

int setvbuf(FILE *stream, char *buf, int type, unsigned size)把緩衝區與流相關

int fprintf(FILE *stream, char *format[, argument,...])傳送格式化輸出到一個流中

int scanf(char *format[,argument,...])執行格式化輸入

int fscanf(FILE *stream, char *format[,argument...])從一個流中執行格式化輸入

int fgetc(FILE *stream)從流中讀取字符

char *fgets(char *string, int n, FILE *stream)從流中讀取一字符串

int fputc(int ch, FILE *stream)送一個字符到一個流中

int fputs(char *string, FILE *stream)送一個字符到一個流中

int getc(FILE *stream)從流中取字符

int getchar(void)從 stdin 流中讀字符

char *gets(char *string)從流中取一字符串

int putchar(int ch)在 stdout 上輸出字符

int puts(char *string)送一字符串到流中

int ungetc(char c, FILE *stream)把一個字符退回到輸入流中

int fread(void *ptr, int size, int nitems, FILE *stream)從一個流中讀數據

int fwrite(void *ptr, int size, int nitems, FILE *stream)寫內容到流中 int fseek

(FILE *stream, long offset, int fromwhere)重定位流上的文件指針

long ftell(FILE *stream)返回當前文件指針

int rewind(FILE *stream)將文件指針重新指向一個流的開頭

int fgetpos(FILE *stream)取得當前文件的句柄

int fsetpos(FILE *stream, const fpos_t *pos)定位流上的文件指針

void clearerr(FILE *stream)復位錯誤標誌

int feof(FILE *stream)檢測流上的文件結束符

int ferror(FILE *stream)檢測流上的錯誤

void perror(char *string)系統錯誤信息

c語言函數大全及詳解 第3張

四. <stdlib.h>

函數原型功能

char *itoa(int i)把整數i轉換成字符串

void exit(int retval)結束程序

double atof(const char *s)將字符串s轉換為double類型

int atoi(const char *s)將字符串s轉換為int類型

long atol(const char *s)將字符串s轉換為long類型

double strtod (const char*s,char **endp)將字符串s前綴轉換為double型

long strtol(const char*s,char **endp,int base)將字符串s前綴轉換為long型

unsinged long strtol(const char*s,char **endp,int base)將字符串s前綴轉換為 unsinged long型

int rand(void)產生一個0~RAND_MAX之間的偽隨機數

void srand(unsigned int seed)初始化隨機數發生器

void *calloc(size_t nelem, size_t elsize)分配主存儲器

void *malloc(unsigned size)內存分配函數

void *realloc(void *ptr, unsigned newsize)重新分配主存

void free(void *ptr)釋放已分配的塊

void abort(void)異常終止一個進程

void exit(int status)終止應用程序

int atexit(atexit_t func)註冊終止函數

char *getenv(char *envvar)從環境中取字符串

void *bsearch(const void *key, const void *base, size_t *nelem, size_t width, int(*fcmp)(const void *, const *))二分法搜索函數

void qsort(void *base, int nelem, int width, int (*fcmp)())使用快速排序例程進行排序

int abs(int i)求整數的絕對值

long labs(long n)取長整型絕對值

div_t div(int number, int denom)將兩個整數相除 , 返回商和餘數

ldiv_t ldiv(long lnumer, long ldenom)兩個長整型數相除 , 返回商和餘數

五. <time.h>

函數原型功能

clock_t clock(void)確定處理器時間函數

time_t time(time_t *tp)返回當前日曆時間

double difftime(time_t time2, time_t time1)計算兩個時刻之間的時間差

time_t mktime(struct tm *tp)將分段時間值轉換為日曆時間值

char *asctime(const struct tm *tblock)轉換日期和時間為ASCII碼

char *ctime(const time_t *time)把日期和時間轉換為字符串

struct tm *gmtime(const time_t *timer)把日期和時間轉換為格林尼治標準時間

struct tm *localtime(const time_t *timer)把日期和時間轉變為結構

size_t strftime(char *s,size_t smax,const char *fmt, const struct tm *tp)根據 fmt 的格式 要求將 *tp中的日期與時間轉換為指定格式

c語言函數大全及詳解 第4張

六. <string.h>

函數原型功能

int bcmp(const void *s1, const void *s2, int n)比較字符串s1和s2的前n個字節是否相等

void bcopy(const void *src, void *dest, int n)將字符串src的前n個字節複製到dest中

void bzero(void *s, int n)置字節字符串s的前n個字節為零

void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count)由src所指內存區域複製不多於count個字節到dest所指內存區域,如果遇到字符ch則停止複製

void *memcpy(void *dest, void *src, unsigned int count)由src所指內存區域複製count個字節到dest所指內存區域

void *memchr(void *buf, char ch, unsigned count)從buf所指內存區域的前count個字節查找字符ch

int memcmp(void *buf1, void *buf2, unsigned int count)比較內存區域buf1和buf2的前count個字節

int memicmp(void *buf1, void *buf2, unsigned int count)比較內存區域buf1和buf2的前count個字節但不區分字母的大小寫

void *memmove(void *dest, const void *src, unsigned int count)由src所指內存區域複製count個字節到dest所指內存區域

void *memset(void *buffer, int c, int count)把buffer所指內存區域的前count個字節設置成字符c

void setmem(void *buf, unsigned int count, char ch)把buf所指內存區域前count個字節設置成字符ch

void movmem(void *src, void *dest, unsigned int count)由src所指內存區域複製count個字節到dest所指內存區域

char *stpcpy(char *dest,char *src)把src所指由NULL結束的字符串複製到dest所指的數組中

char *strcpy(char *dest,char *src)把src所指由NULL結束的字符串複製到dest所指的數組中

char *strcat(char *dest,char *src)把src所指字符串添加到dest結尾處(覆蓋dest結尾處的’