函数名: getpass 功 能: 读一个口令 用 法: char *getpass(char *prompt); 程序例:
#include <conio.h>
int main(void) { char *passWord;
password = getpass("Input a password:"); cprintf("The password is: %s\r\n", password); return 0; }
函数名: getpixel 功 能: 取得指定像素的颜色 用 法: int far getpixel(int x, int y); 程序例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <dos.h>
#define PIXEL_COUNT 1000 #define DELAY_TIME 100 /* in milliseconds */
int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; int i, x, y, color, maxx, maxy, maxcolor, seed;
/* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "");
/* read result of initialization */ errorcode = graphresult(); /* an error occurred */ if (errorcode != grOk) { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); /* terminate with an error code */ exit(1); }
maxx = getmaxx() + 1; maxy = getmaxy() + 1; maxcolor = getmaxcolor() + 1;
while (!kbhit()) { /* seed the random number generator */ seed = random(32767); srand(seed); for (i=0; i<PIXEL_COUNT; i++) { x = random(maxx); y = random(maxy); color = random(maxcolor); putpixel(x, y, color); }
delay(DELAY_TIME); srand(seed); for (i=0; i<PIXEL_COUNT; i++) { x = random(maxx); y = random(maxy); color = random(maxcolor); if (color == getpixel匇? ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;h;(;);;; ;e;t;p;s;p;(;););;; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;e;s;e;t; ;t;o; ;s;e;g;m;e;n;t; ;o;f; ;t;h;e; ;P;S;P; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;i;n;e; ;i;s; ;l;o;c;a;t;e;d; ;a;t; ;o;f;f;s;e;t; ;0;x;8;1; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;t; ;o;f; ;P;S;P; ; ; ; ; ; ; ; ;
函数名: gets 功 能: 从流中取一字符串 用 法: char *gets(char *string); 程序例:
#include <stdio.h>
int main(void) { char string[80];
printf("Input a string:"); gets(string); printf("The string input was: %s\n", string); return 0; }
函数名: gettext 功 能: 将文本方式屏幕上的文本拷贝到存储区 用 法: int gettext(int left, int top, int right, int bottom, void *destin); 程序例:
#include <conio.h>
char buffer[4096];
int main(void) { int i; clrscr(); for (i = 0; i <= 20; i++) cprintf("Line #%d\r\n", i); gettext(1, 1, 80, 25, buffer); gotoxy(1, 25); cprintf("Press any key to clear screen..."); getch(); clrscr(); gotoxy(1, 25); cprintf("Press any key to restore screen..."); getch(); puttext(1, 1, 80, 25, buffer); gotoxy(1, 25); cprintf("Press any key to quit..."); getch(); return 0; }
函数名: gettextinfo 功 能: 取得文本模式的显示信息 用 法: void gettextinfo(strUCt text_info *inforec); 程序例:
#include <conio.h>
int main(void) { struct text_info ti; gettextinfo(&ti); cprintf("window left %2d\r\n",ti.winleft); cprintf("window top %2d\r\n",ti.wintop); cprintf("window right %2d\r\n",ti.winright); cprintf("window bottom %2d\r\n",ti.winbottom); cprintf("attribute %2d\r\n",ti.attribute); cprintf("normal attribute %2d\r\n",ti.normattr); cprintf("current mode %2d\r\n",ti.currmode); cprintf("screen height %2d\r\n",ti.screenheight); cprintf("screen width %2d\r\n",ti.screenwidth); cprintf("current x %2d\r\n",ti.curx); cprintf("current y %2d\r\n",ti.cury); return 0; }
函数名: gettextsettings 功 能: 返回有关当前图形文本字体的信息 用 法: void far gettextsettings(struct textsettingstype far *textinfo); 程序例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h>
/* the names of the fonts supported */ char *font[] = { "DEFAULT_FONT", "TRIPLEX_FONT", "SMALL_FONT", "SANS_SERIF_FONT", "GOTHIC_FONT" };
/* the names of the text directions supported */ char *dir[] = { "HORIZ_DIR", "VERT_DIR" };
/* horizontal text justifications supported */ char *hjust[] = { "LEFT_TEXT", "CENTER_TEXT", "RIGHT_TEXT" };
/* vertical text justifications supported */ char *vjust[] = { "BOTTOM_TEXT", "CENTER_TEXT", "TOP_TEXT" };
int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; struct textsettingstype textinfo; int midx, midy, ht; char fontstr[80], dirstr[80], sizestr[80]; char hjuststr[80], vjuststr[80];
/* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "");
/* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); /* terminate with an error code */ }
midx = getmaxx() / 2; midy = getmaxy() / 2;
/* get information about current text settings */ gettextsettings(&textinfo);
/* convert text information into strings */ sprintf(fontstr, "%s is the text style.", font[textinfo.font]); sprintf(dirstr, "%s is the text direction.", dir[textinfo.direction]); sprintf(sizestr, "%d is the text size.", textinfo.charsize); sprintf(hjuststr, "%s is the horizontal justification.", hjust[textinfo.horiz]); sprintf(vjuststr, "%s is the vertical justification.", vjust[textinfo.vert]);
/* display the information */ ht = textheight("W"); settextjustify(CENTER_TEXT, CENTER_TEXT); outtextxy(midx, midy, fontstr); outtextxy(midx, midy+2*ht, dirstr); outtextxy(midx, midy+4*ht, sizestr); outtextxy(midx, midy+6*ht, hjuststr); outtextxy(midx, midy+8*ht, vjuststr);
/* clean up */ getch(); closegraph(); return 0; }
函数名: gettime 功 能: 取得系统时间 用 法: void gettime(struct time *timep); 程序例:
#include <stdio.h> #include <dos.h>
int main(void) { struct time t;
gettime(&t); printf("The current time is: %2d:%02d:%02d.%02d\n", t.ti_hour, t.ti_min, t.ti_sec, t.ti_hund); return 0; }
函数名: getvect 功 能: 取得中断向量入口 用 法: void interrupt(*getvect(int intr_num)); 程序例:
#include <stdio.h> #include <dos.h>
void interrupt get_out(); /* interrupt prototype */
void interrupt (*oldfunc)(); /* interrupt function pointer */ int looping = 1;
int main(void) { puts("Press <Shift><Prt Sc> to terminate");
/* save the old interrupt */ oldfunc = getvect(5);
/* install interrupt handler */ setvect(5,get_out);
/* do nothing */ while (looping);
/* restore to original interrupt routine */ setvect(5,oldfunc);
puts("Success"); return 0; } void interrupt get_out() { looping = 0; /* change global variable to get out of loop */ }
函数名: getverify 功 能: 返回DOS校验标志状态 用 法: int getverify(void); 程序例:
#include <stdio.h> #include <dos.h>
int main(void) { if (getverify()) printf("DOS verify flag is on\n"); else printf("DOS verify flag is off\n"); return 0; }
函数名: getviewsetting 功 能: 返回有关当前视区的信息 用 法: void far getviewsettings(struct viewporttype far *viewport); 程序例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h>
char *clip[] = { "OFF", "ON" };
int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; struct viewporttype viewinfo; int midx, midy, ht; char topstr[80], botstr[80], clipstr[80];
/* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "");
/* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); /* terminate with an error code */ }
midx = getmaxx() / 2; midy = getmaxy() / 2;
/* get information about current viewport */ getviewsettings(&viewinfo);
/* convert text information into strings */ sprintf(topstr, "(%d, %d) is the upper left viewport corner.", viewinfo.left, viewinfo.top); sprintf(botstr, "(%d, %d) is the lower right viewport corner.", viewinfo.right, viewinfo.bottom); sprintf(clipstr, "Clipping is turned %s.", clip[viewinfo.clip]);
/* display the information */ settextjustify(CENTER_TEXT, CENTER_TEXT); ht = textheight("W"); outtextxy(midx, midy, topstr); outtextxy(midx, midy+2*ht, botstr); outtextxy(midx, midy+4*ht, clipstr);
/* clean up */ getch(); closegraph(); return 0; }
函数名: getw 功 能: 从流中取一整数 用 法: int getw(FILE *strem); 程序例:
#include <stdio.h> #include <stdlib.h>
#define FNAME "test.$$$"
int main(void) { FILE *fp; int word;
/* place the word in a file */ fp = fopen(FNAME, "wb"); if (fp == NULL) { printf("Error opening file %s\n", FNAME); exit(1); }
word = 94; putw(word,fp); if (ferror(fp)) printf("Error writing to file\n"); else printf("Successful write\n"); fclose(fp);
/* reopen the file */ fp = fopen(FNAME, "rb"); if (fp == NULL) { printf("Error opening file %s\n", FNAME); exit(1); }
/* extract the word */ word = getw(fp); if (ferror(fp)) printf("Error reading file\n"); else printf("Successful read: word = %d\n", word);
/* clean up */ fclose(fp); unlink(FNAME);
return 0; }
函数名: getx 功 能: 返回当前图形位置的x坐标 用 法: int far getx(void); 程序例:
#include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h>
int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode; char msg[80];
/* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "");
/* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ { printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); /* terminate with an error code */ }
/* move to the screen center point */ moveto(getmaxx() / 2, getmaxy() / 2);
/* create a message string */ sprintf(msg, "<-(%d, %d) is the here.", getx(), gety());
/* display the message */ outtext(msg);
/* clean up */ getch(); closegraph(); return 0; }
|