1、C语言函数大全P函数名: parsfnm功 能: 分析文件名用 法: char *parsfnm (char *cmdline, struct fcb *fcbptr, int option);程序例: #include #include #include #include int main(void) char line80; struct fcb blk; /* get file name */ printf(Enter drive and file name (no path - ie. a:file.dat)n); gets(line); /* put file name in fcb
2、 */ if (parsfnm(line, &blk, 1) = NULL) printf(Error in parsfm calln); else printf(Drive #%d Name: %11sn, blk.fcb_drive, blk.fcb_name); return 0;函数名: peek功 能: 检查存储单元用 法: int peek(int segment, unsigned offset);程序例:#include #include #include int main(void) int value = 0; printf(The current status of yo
3、ur keyboard is:n); value = peek(0x0040, 0x0017); if (value & 1) printf(Right shift onn); else printf(Right shift offn); if (value & 2) printf(Left shift onn); else printf(Left shift offn); if (value & 4) printf(Control key onn); else printf(Control key offn); if (value & 8) printf(Alt key onn); else
4、 printf(Alt key offn); if (value & 16) printf(Scroll lock onn); else printf(Scroll lock offn); if (value & 32) printf(Num lock onn); else printf(Num lock offn); if (value & 64) printf(Caps lock onn); else printf(Caps lock offn); return 0;函数名: peekb功 能: 检查存储单元用 法: char peekb (int segment, unsigned of
5、fset);程序例:#include #include #include int main(void) int value = 0; printf(The current status of your keyboard is:n); value = peekb(0x0040, 0x0017); if (value & 1) printf(Right shift onn); else printf(Right shift offn); if (value & 2) printf(Left shift onn); else printf(Left shift offn); if (value &
6、4) printf(Control key onn); else printf(Control key offn); if (value & 8) printf(Alt key onn); else printf(Alt key offn); if (value & 16) printf(Scroll lock onn); else printf(Scroll lock offn); if (value & 32) printf(Num lock onn); else printf(Num lock offn); if (value & 64) printf(Caps lock onn); e
7、lse printf(Caps lock offn); return 0;函数名: perror功 能: 系统错误信息用 法: void perror(char *string);程序例:#include int main(void) FILE *fp; fp = fopen(perror.dat, r); if (!fp) perror(Unable to open file for reading); return 0;函数名: pieslice功 能: 绘制并填充一个扇形用 法: void far pieslice(int x, int stanle, int endangle, int
8、 radius);程序例:#include #include #include #include int main(void) /* request auto detection */ int gdriver = DETECT, gmode, errorcode; int midx, midy; int stangle = 45, endangle = 135, radius = 100; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ); /* read result of initiali
9、zation */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ 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; /* set fill style and draw a pie
10、slice */ setfillstyle(EMPTY_FILL, getmaxcolor(); pieslice(midx, midy, stangle, endangle, radius); /* clean up */ getch(); closegraph(); return 0;函数名: poke功 能: 存值到一个给定存储单元用 法: void poke(int segment, int offset, int value);程序例:#include #include int main(void) clrscr(); cprintf(Make sure the scroll loc
11、k key is off and press any keyrn); getch(); poke(0x0000,0x0417,16); cprintf(The scroll lock is now onrn); return 0;函数名: pokeb功 能: 存值到一个给定存储单元用 法: void pokeb(int segment, int offset, char value);程序例:#include #include int main(void) clrscr(); cprintf(Make sure the scroll lock key is off and press any
12、keyrn); getch(); pokeb(0x0000,0x0417,16); cprintf(The scroll lock is now onrn); return 0;函数名: poly功 能: 根据参数产生一个多项式用 法: double poly(double x, int n, double c);程序例:#include #include /* polynomial: x*3 - 2x*2 + 5x - 1 */int main(void) double array = -1.0, 5.0, -2.0, 1.0 ; double result; result = poly(2
13、.0, 3, array); printf(The polynomial: x*3 - 2.0x*2 + 5x - 1 at 2.0 is %lfn, result); return 0;函数名: pow功 能: 指数函数(x的y次方)用 法: double pow(double x, double y);程序例:#include #include int main(void) double x = 2.0, y = 3.0; printf(%lf raised to %lf is %lfn, x, y, pow(x, y); return 0;函数名: pow10功 能: 指数函数(10的p
14、次方)用 法: double pow10(int p);程序例:#include #include int main(void) double p = 3.0; printf(Ten raised to %lf is %lfn, p, pow10(p); return 0;函数名: printf功 能: 产生格式化输出的函数用 法: int printf(char *format.);程序例:#include #include #define I 555#define R 5.5int main(void) int i,j,k,l; char buf7; char *prefix = buf;
15、 char tp20; printf(prefix 6d 6o 8x 10.2e 10.2fn); strcpy(prefix,%); for (i = 0; i 2; i+) for (j = 0; j 2; j+) for (k = 0; k 2; k+) for (l = 0; l 2; l+) if (i=0) strcat(prefix,-); if (j=0) strcat(prefix,+); if (k=0) strcat(prefix,#); if (l=0) strcat(prefix,0); printf(%5s |,prefix); strcpy(tp,prefix);
16、 strcat(tp,6d |); printf(tp,I); strcpy(tp,); strcpy(tp,prefix); strcat(tp,6o |); printf(tp,I); strcpy(tp,); strcpy(tp,prefix); strcat(tp,8x |); printf(tp,I); strcpy(tp,); strcpy(tp,prefix); strcat(tp,10.2e |); printf(tp,R); strcpy(tp,prefix); strcat(tp,10.2f |); printf(tp,R); printf( n); strcpy(pref
17、ix,%); return 0;函数名: putc功 能: 输出一字符到指定流中用 法: int putc(int ch, FILE *stream);程序例:#include int main(void) char msg = Hello worldn; int i = 0; while (msgi) putc(msgi+, stdout); return 0;函数名: putch功 能: 输出字符到控制台用 法: int putch(int ch);程序例:#include #include int main(void) char ch = 0; printf(Input a string
18、:); while (ch != r) ch = getch(); putch(ch); return 0;函数名: putchar功 能: 在stdout上输出字符用 法: int putchar(int ch);程序例:#include /* define some box-drawing characters */#define LEFT_TOP 0xDA#define RIGHT_TOP 0xBF#define HORIZ 0xC4#define VERT 0xB3#define LEFT_BOT 0xC0#define RIGHT_BOT 0xD9int main(void) cha
19、r i, j; /* draw the top of the box */ putchar(LEFT_TOP); for (i=0; i10; i+) putchar(HORIZ); putchar(RIGHT_TOP); putchar(n); /* draw the middle */ for (i=0; i4; i+) putchar(VERT); for (j=0; j10; j+) putchar( ); putchar(VERT); putchar(n); /* draw the bottom */ putchar(LEFT_BOT); for (i=0; i10; i+) put
20、char(HORIZ); putchar(RIGHT_BOT); putchar(n); return 0;函数名: putenv功 能: 把字符串加到当前环境中用 法: int putenv(char *envvar);程序例:#include #include #include #include #include int main(void) char *path, *ptr; int i = 0; /* get the current path environment */ ptr = getenv(PATH); /* set up new path */ path = malloc(s
21、trlen(ptr)+15); strcpy(path,PATH=); strcat(path,ptr); strcat(path,;c:temp); /* replace the current path and display current environment */ putenv(path); while (environi) printf(%sn,environi+); return 0;函数名: putimage功 能: 在屏幕上输出一个位图用 法: void far putimage(int x, int y, void far *bitmap, int op);程序例:#in
22、clude #include #include #include #define ARROW_SIZE 10void draw_arrow(int x, int y);int main(void) /* request autodetection */ int gdriver = DETECT, gmode, errorcode; void *arrow; int x, y, maxx; unsigned int size; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, ); /* read
23、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); /* terminate with an error code */ maxx = getmaxx(); x = 0; y = getmaxy() / 2; /* draw the ima
24、ge to be grabbed */ draw_arrow(x, y); /* calculate the size of the image */ size = imagesize(x, y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE); /* allocate memory to hold the image */ arrow = malloc(size); /* grab the image */ getimage(x, y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE, arrow); /* repeat until a key is pressed */ while (!kbhit() /* erase old image */ putimage(x, y-ARROW_SIZE, arrow, XOR_PUT); x += ARROW_SIZE; if (x = maxx)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1