⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 [c函数之g].txt

📁 C常用函数 多了解一些有好处的
💻 TXT
📖 第 1 页 / 共 4 页
字号:
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; 
} 



函数名: gety 
功 能: 返回当前图形位置的y坐标 
用 法: int far gety(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; 
} 



函数名: gmtime 
功 能: 把日期和时间转换为格林尼治标准时间(GMT) 
用 法: struct tm *gmtime(long *clock); 
程序例: 

#include <stdio.h> 
#include <stdlib.h> 
#include <time.h> 
#include <dos.h> 

/* Pacific Standard Time & Daylight Savings */ 
char *tzstr = "TZ=PST8PDT"; 

int main(void) 
{ 
time_t t; 
struct tm *gmt, *area; 

putenv(tzstr); 
tzset(); 

t = time(NULL); 
area = localtime(&t); 
printf("Local time is: %s", asctime(area)); 
gmt = gmtime(&t); 
printf("GMT is: %s", asctime(gmt)); 
return 0; 
} 



函数名: gotoxy 
功 能: 在文本窗口中设置光标 
用 法: void gotoxy(int x, int y); 
程序例: 

#include <conio.h> 

int main(void) 
{ 
clrscr(); 
gotoxy(35, 12); 
cprintf("Hello world"); 
getch(); 
return 0; 
} 



函数名: gotoxy 
功 能: 在文本窗口中设置光标 
用 法: void gotoxy(int x, int y); 
程序例: 

#include <conio.h> 

int main(void) 
{ 
clrscr(); 
gotoxy(35, 12); 
cprintf("Hello world"); 
getch(); 
return 0; 
} 



函数名: graphdefaults 
功 能: 将所有图形设置复位为它们的缺省值 
用 法: void far graphdefaults(void); 
程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 
int maxx, maxy; 

/* initialize graphics and local variables */ 
initgraph(&gdriver, &gmode, "c:\\bor\\Borland\\bgi"); 

/* 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 */ 
} 

maxx = getmaxx(); 
maxy = getmaxy(); 

/* output line with non-default settings */ 
setlinestyle(DOTTED_LINE, 0, 3); 
line(0, 0, maxx, maxy); 
outtextxy(maxx/2, maxy/3, "Before default values are restored."); 
getch(); 

/* restore default values for everything */ 
graphdefaults(); 

/* clear the screen */ 
cleardevice(); 

/* output line with default settings */ 
line(0, 0, maxx, maxy); 
outtextxy(maxx/2, maxy/3, "After restoring default values."); 

/* clean up */ 
getch(); 
closegraph(); 
return 0; 
} 



函数名: grapherrormsg 
功 能: 返回一个错误信息串的指针 
用 法: char *far grapherrormsg(int errorcode); 
程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 

#define NONSENSE -50 

int main(void) 
{ 
/* FORCE AN ERROR TO OCCUR */ 
int gdriver = NONSENSE, gmode, errorcode; 

/* initialize graphics mode */ 
initgraph(&gdriver, &gmode, ""); 

/* read result of initialization */ 
errorcode = graphresult(); 

/* if an error occurred, then output a */ 
/* descriptive error message. */ 
if (errorcode != grOk) 
{ 
printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
printf("Press any key to halt:"); 
getch(); 
exit(1); /* terminate with an error code */ 
} 

/* draw a line */ 
line(0, 0, getmaxx(), getmaxy()); 

/* clean up */ 
getch(); 
closegraph(); 
return 0; 
} 



函数名: graphresult 
功 能: 返回最后一次不成功的图形操作的错误代码 
用 法: int far graphresult(void); 
程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 

/* 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 */ 
} 

/* draw a line */ 
line(0, 0, getmaxx(), getmaxy()); 

/* clean up */ 
getch(); 
closegraph(); 
return 0; 
} 


函数名: _graphfreemem 
功 能: 用户可修改的图形存储区释放函数 
用 法: void far _graphfreemem(void far *ptr, unsigned size); 
程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 
#include <alloc.h> 

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 
int midx, midy; 

/* clear the text screen */ 
clrscr(); 
printf("Press any key to initialize graphics mode:"); 
getch(); 
clrscr(); 

/* 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; 

/* display a message */ 
settextjustify(CENTER_TEXT, CENTER_TEXT); 
outtextxy(midx, midy, "Press any key to exit graphics mode:"); 

/* clean up */ 
getch(); 
closegraph(); 
return 0; 
} 

/* called by the graphics kernel to allocate memory */ 
void far * far _graphgetmem(unsigned size) 
{ 
printf("_graphgetmem called to allocate %d bytes.\n", size); 
printf("hit any key:"); 
getch(); 
printf("\n"); 

/* allocate memory from far heap */ 
return farmalloc(size); 
} 

/* called by the graphics kernel to free memory */ 
void far _graphfreemem(void far *ptr, unsigned size) 
{ 
printf("_graphfreemem called to free %d bytes.\n", size); 
printf("hit any key:"); 
getch(); 
printf("\n"); 

/* free ptr from far heap */ 
farfree(ptr); 
} 


函数名: _graphgetmem 
功 能: 用户可修改的图形存储区分配函数 
用 法: void far *far _graphgetmem(unsigned size); 
程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 
#include <alloc.h> 

int main(void) 
{ 
/* request autodetection */ 
int gdriver = DETECT, gmode, errorcode; 
int midx, midy; 

/* clear the text screen */ 
clrscr(); 
printf("Press any key to initialize graphics mode:"); 
getch(); 
clrscr(); 

/* 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; 

/* display a message */ 
settextjustify(CENTER_TEXT, CENTER_TEXT); 
outtextxy(midx, midy, "Press any key to exit graphics mode:"); 

/* clean up */ 
getch(); 
closegraph(); 
return 0; 
} 

/* called by the graphics kernel to allocate memory */ 
void far * far _graphgetmem(unsigned size) 
{ 
printf("_graphgetmem called to allocate %d bytes.\n", size); 
printf("hit any key:"); 
getch(); 
printf("\n"); 

/* allocate memory from far heap */ 
return farmalloc(size); 
} 

/* called by the graphics kernel to free memory */ 
void far _graphfreemem(void far *ptr, unsigned size) 
{ 
printf("_graphfreemem called to free %d bytes.\n", size); 
printf("hit any key:"); 
getch(); 
printf("\n"); 

/* free ptr from far heap */ 
farfree(ptr); 
} 

更多的函数

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -