c语言函数大全(语法).doc

上传人:文库蛋蛋多 文档编号:2384582 上传时间:2023-02-17 格式:DOC 页数:311 大小:1.50MB
返回 下载 相关 举报
c语言函数大全(语法).doc_第1页
第1页 / 共311页
c语言函数大全(语法).doc_第2页
第2页 / 共311页
c语言函数大全(语法).doc_第3页
第3页 / 共311页
c语言函数大全(语法).doc_第4页
第4页 / 共311页
c语言函数大全(语法).doc_第5页
第5页 / 共311页
点击查看更多>>
资源描述

《c语言函数大全(语法).doc》由会员分享,可在线阅读,更多相关《c语言函数大全(语法).doc(311页珍藏版)》请在三一办公上搜索。

1、C语言函数大全(语法)函数名: abort功 能: 异常终止一个进程用 法: void abort(void);程序例:#include #include int main(void) printf(Calling abort()n); abort(); return 0; /* This is never reached */函数名: abs功 能: 求整数的绝对值用 法: int abs(int i);程序例:#include #include int main(void) int number = -1234; printf(number: %d absolute value: %dn,

2、 number, abs(number); return 0;函数名: absread, abswirte功 能: 绝对磁盘扇区读、写数据用 法: int absread(int drive, int nsects, int sectno, void *buffer); int abswrite(int drive, int nsects, in tsectno, void *buffer);程序例:/* absread example */#include #include #include #include int main(void) int i, strt, ch_out, secto

3、r; char buf512; printf(Insert a diskette into drive A and press any keyn); getch(); sector = 0; if (absread(0, 1, sector, &buf) != 0) perror(Disk problem); exit(1); printf(Read OKn); strt = 3; for (i=0; i80; i+) ch_out = bufstrt+i; putchar(ch_out); printf(n); return(0);函数名: access功 能: 确定文件的访问权限用 法:

4、int access(const char *filename, int amode);程序例:#include #include int file_exists(char *filename);int main(void) printf(Does NOTEXIST.FIL exist: %sn, file_exists(NOTEXISTS.FIL) ? YES : NO); return 0;int file_exists(char *filename) return (access(filename, 0) = 0);函数名: acos功 能: 反余弦函数用 法: double acos(

5、double x);程序例:#include #include int main(void) double result; double x = 0.5; result = acos(x); printf(The arc cosine of %lf is %lfn, x, result); return 0;函数名: allocmem功 能: 分配DOS存储段用 法: int allocmem(unsigned size, unsigned *seg);程序例:#include #include #include int main(void) unsigned int size, segp;

6、int stat; size = 64; /* (64 x 16) = 1024 bytes */ stat = allocmem(size, &segp); if (stat = -1) printf(Allocated memory at segment: %xn, segp); else printf(Failed: maximum number of paragraphs available is %un, stat); return 0;函数名: arc功 能: 画一弧线用 法: void far arc(int x, int y, int stangle, int endangle

7、, int radius);程序例:#include #include #include #include int main(void) /* request auto detection */ int gdriver = DETECT, gmode, errorcode; int midx, midy; int stangle = 45, endangle = 135; int radius = 100; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ); /* read result of

8、 initialization */ errorcode = graphresult(); /* an error occurred */ if (errorcode != grOk) printf(Graphics error: %sn, grapherrormsg(errorcode); printf(Press any key to halt:); getch(); exit(1); /* terminate with an error code */ midx = getmaxx() / 2; midy = getmaxy() / 2; setcolor(getmaxcolor();

9、/* draw arc */ arc(midx, midy, stangle, endangle, radius); /* clean up */ getch(); closegraph(); return 0;函数名: asctime功 能: 转换日期和时间为ASCII码用 法: char *asctime(const struct tm *tblock);程序例:#include #include #include int main(void) struct tm t; char str80; /* sample loading of tm structure */ t.tm_sec =

10、1; /* Seconds */ t.tm_min = 30; /* Minutes */ t.tm_hour = 9; /* Hour */ t.tm_mday = 22; /* Day of the Month */ t.tm_mon = 11; /* Month */ t.tm_year = 56; /* Year - does not include century */ t.tm_wday = 4; /* Day of the week */ t.tm_yday = 0; /* Does not show in asctime */ t.tm_isdst = 0; /* Is Day

11、light SavTime; does not show in asctime */ /* converts structure to null terminated string */ strcpy(str, asctime(&t); printf(%sn, str); return 0;函数名: asin功 能: 反正弦函数用 法: double asin(double x);程序例:#include #include int main(void) double result; double x = 0.5; result = asin(x); printf(The arc sin of

12、%lf is %lfn, x, result); return(0);函数名: assert功 能: 测试一个条件并可能使程序终止用 法: void assert(int test);程序例:#include #include #include struct ITEM int key; int value;/* add item to list, make sure list is not null */void additem(struct ITEM *itemptr) assert(itemptr != NULL); /* add item to list */int main(void)

13、 additem(NULL); return 0;函数名: atan功 能: 反正切函数用 法: double atan(double x);程序例:#include #include int main(void) double result; double x = 0.5; result = atan(x); printf(The arc tangent of %lf is %lfn, x, result); return(0);函数名: atan2功 能: 计算Y/X的反正切值用 法: double atan2(double y, double x);程序例:#include #inclu

14、de int main(void) double result; double x = 90.0, y = 45.0; result = atan2(y, x); printf(The arc tangent ratio of %lf is %lfn, (y / x), result); return 0;函数名: atexit功 能: 注册终止函数用 法: int atexit(atexit_t func);程序例:#include #include void exit_fn1(void) printf(Exit function #1 calledn);void exit_fn2(void

15、) printf(Exit function #2 calledn);int main(void) /* post exit function #1 */ atexit(exit_fn1); /* post exit function #2 */ atexit(exit_fn2); return 0;函数名: atof功 能: 把字符串转换成浮点数用 法: double atof(const char *nptr);程序例:#include #include int main(void) float f; char *str = 12345.67; f = atof(str); printf(

16、string = %s float = %fn, str, f); return 0;函数名: atoi功 能: 把字符串转换成长整型数用 法: int atoi(const char *nptr);程序例:#include #include int main(void) int n; char *str = 12345.67; n = atoi(str); printf(string = %s integer = %dn, str, n); return 0;函数名: atol功 能: 把字符串转换成长整型数用 法: long atol(const char *nptr);程序例:#incl

17、ude #include int main(void) long l; char *str = 98765432; l = atol(lstr); printf(string = %s integer = %ldn, str, l); return(0);B函数名: bar功 能: 画一个二维条形图用 法: void far bar(int left, int top, int right, int bottom);程序例:#include #include #include #include int main(void) /* request auto detection */ int gd

18、river = DETECT, gmode, errorcode; int midx, midy, i; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ); /* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ printf(Graphics error: %sn, grapherrormsg(errorcode); printf

19、(Press any key to halt:); getch(); exit(1); /* terminate with an error code */ midx = getmaxx() / 2; midy = getmaxy() / 2; /* loop through the fill patterns */ for (i=SOLID_FILL; iUSER_FILL; i+) /* set the fill style */ setfillstyle(i, getmaxcolor(); /* draw the bar */ bar(midx-50, midy-50, midx+50,

20、 midy+50); getch(); /* clean up */ closegraph(); return 0;函数名: bar3d功 能: 画一个三维条形图用 法: void far bar3d(int left, int top, int right, int bottom, int depth, int topflag);程序例:#include #include #include #include int main(void) /* request auto detection */ int gdriver = DETECT, gmode, errorcode; int midx,

21、 midy, i; /* initialize graphics, local variables */ initgraph(&gdriver, &gmode, ); /* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ printf(Graphics error: %sn, grapherrormsg(errorcode); printf(Press any key to halt:); getch(); exit(1); /*

22、 terminate with error code */ midx = getmaxx() / 2; midy = getmaxy() / 2; /* loop through the fill patterns */ for (i=EMPTY_FILL; iUSER_FILL; i+) /* set the fill style */ setfillstyle(i, getmaxcolor(); /* draw the 3-d bar */ bar3d(midx-50, midy-50, midx+50, midy+50, 10, 1); getch(); /* clean up */ c

23、losegraph(); return 0;函数名: bdos功 能: DOS系统调用用 法: int bdos(int dosfun, unsigned dosdx, unsigned dosal);程序例:#include #include /* Get current drive as A, B, . */char current_drive(void) char curdrive; /* Get current disk as 0, 1, . */ curdrive = bdos(0x19, 0, 0); return(A + curdrive);int main(void) prin

24、tf(The current drive is %c:n, current_drive(); return 0;函数名: bdosptr功 能: DOS系统调用用 法: int bdosptr(int dosfun, void *argument, unsigned dosal);程序例:#include #include #include #include #include #include #define BUFLEN 80int main(void) char bufferBUFLEN; int test; printf(Enter full pathname of a director

25、yn); gets(buffer); test = bdosptr(0x3B,buffer,0); if(test) printf(DOS error message: %dn, errno); /* See errno.h for error listings */ exit (1); getcwd(buffer, BUFLEN); printf(The current directory is: %sn, buffer); return 0;函数名: bioscom功 能: 串行I/O通信用 法: int bioscom(int cmd, char abyte, int port);程序例

26、:#include #include #define COM1 0#define DATA_READY 0x100#define TRUE 1#define FALSE 0#define SETTINGS ( 0x80 | 0x02 | 0x00 | 0x00)int main(void) int in, out, status, DONE = FALSE; bioscom(0, SETTINGS, COM1); cprintf(. BIOSCOM ESC to exit .n); while (!DONE) status = bioscom(3, 0, COM1); if (status &

27、 DATA_READY) if (out = bioscom(2, 0, COM1) & 0x7F) != 0) putch(out); if (kbhit() if (in = getch() = x1B) DONE = TRUE; bioscom(1, in, COM1); return 0;函数名: biosdisk功 能: 软硬盘I/O用 法: int biosdisk(int cmd, int drive, int head, int track, int sector int nsects, void *buffer);程序例:#include #include int main(

28、void) int result; char buffer512; printf(Testing to see if drive a: is readyn); result = biosdisk(4,0,0,0,0,1,buffer); result &= 0x02; (result) ? (printf(Drive A: Readyn) : (printf(Drive A: Not Readyn); return 0;函数名: biosequip功 能: 检查设备用 法: int biosequip(void);程序例:#include #include int main(void) int

29、 result; char buffer512; printf(Testing to see if drive a: is readyn); result = biosdisk(4,0,0,0,0,1,buffer); result &= 0x02; (result) ? (printf(Drive A: Readyn) : (printf(Drive A: Not Readyn); return 0;函数名: bioskey功 能: 直接使用BIOS服务的键盘接口用 法: int bioskey(int cmd);程序例:#include #include #include #define

30、RIGHT 0x01#define LEFT 0x02#define CTRL 0x04#define ALT 0x08int main(void) int key, modifiers; /* function 1 returns 0 until a key is pressed */ while (bioskey(1) = 0); /* function 0 returns the key that is waiting */ key = bioskey(0); /* use function 2 to determine if shift keys were used */ modifi

31、ers = bioskey(2); if (modifiers) printf(); if (modifiers & RIGHT) printf(RIGHT); if (modifiers & LEFT) printf(LEFT); if (modifiers & CTRL) printf(CTRL); if (modifiers & ALT) printf(ALT); printf(); /* print out the character read */ if (isalnum(key & 0xFF) printf(%cn, key); else printf(%#02xn, key);

32、return 0;函数名: biosmemory功 能: 返回存储块大小用 法:int biosmemory(void);程序例:#include #include int main(void) int memory_size; memory_size = biosmemory(); /* returns value up to 640K */ printf(RAM size = %dKn,memory_size); return 0;函数名: biosprint功 能: 直接使用BIOS服务的打印机I/O用 法: int biosprint(int cmd, int byte, int po

33、rt);程序例:#include #include #include int main(void) #define STATUS 2 /* printer status command */ #define PORTNUM 0 /* port number for LPT1 */ int status, abyte=0; printf(Please turn off your printer. Press any key to continuen); getch(); status = biosprint(STATUS, abyte, PORTNUM); if (status & 0x01)

34、printf(Device time out.n); if (status & 0x08) printf(I/O error.n); if (status & 0x10) printf(Selected.n); if (status & 0x20) printf(Out of paper.n); if (status & 0x40) printf(Acknowledge.n); if (status & 0x80) printf(Not busy.n); return 0;函数名: biostime功 能: 读取或设置BIOS时间用 法: long biostime(int cmd, long

35、 newtime);程序例:#include #include #include #include int main(void) long bios_time; clrscr(); cprintf(The number of clock ticks since midnight is:rn); cprintf(The number of seconds since midnight is:rn); cprintf(The number of minutes since midnight is:rn); cprintf(The number of hours since midnight is:

36、rn); cprintf(rnPress any key to quit:); while(!kbhit() bios_time = biostime(0, 0L); gotoxy(50, 1); cprintf(%lu, bios_time); gotoxy(50, 2); cprintf(%.4f, bios_time / CLK_TCK); gotoxy(50, 3); cprintf(%.4f, bios_time / CLK_TCK / 60); gotoxy(50, 4); cprintf(%.4f, bios_time / CLK_TCK / 3600); return 0;函数

37、名: brk功 能: 改变数据段空间分配用 法: int brk(void *endds);程序例:#include #include int main(void) char *ptr; printf(Changing allocation with brk()n); ptr = malloc(1); printf(Before brk() call: %lu bytes freen, coreleft(); brk(ptr+1000); printf( After brk() call: %lu bytes freen, coreleft(); return 0;函数名: bsearch功

38、能: 二分法搜索用 法: void *bsearch(const void *key, const void *base, size_t *nelem, size_t width, int(*fcmp)(const void *, const *);程序例:#include #include #define NELEMS(arr) (sizeof(arr) / sizeof(arr0)int numarray = 123, 145, 512, 627, 800, 933;int numeric (const int *p1, const int *p2) return(*p1 - *p2);int lookup(int key) int *itemptr; /* The cast of (int(*)(const void *,const

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号