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

📄 [c函数之g].txt

📁 C常用函数 多了解一些有好处的
💻 TXT
📖 第 1 页 / 共 4 页
字号:
 函数名: gcvt 
功 能: 把浮点数转换成字符串 
用 法: char *gcvt(double value, int ndigit, char *buf); 
程序例: 

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

int main(void) 
{ 
char str[25]; 
double num; 
int sig = 5; /* significant digits */ 

/* a regular number */ 
num = 9.876; 
gcvt(num, sig, str); 
printf("string = %s\n", str); 

/* a negative number */ 
num = -123.4567; 
gcvt(num, sig, str); 
printf("string = %s\n", str); 

/* scientific notation */ 
num = 0.678e5; 
gcvt(num, sig, str); 
printf("string = %s\n", str); 

return(0); 
} 




函数名: geninterrupt 
功 能: 产生一个软中断 
用 法: void geninterrupt(int intr_num); 
程序例: 

#include <conio.h> 
#include <dos.h> 

/* function prototype */ 
void writechar(char ch); 

int main(void) 
{ 
clrscr(); 
gotoxy(80,25); 
writechar('*'); 
getch(); 
return 0; 
} 

/* 
outputs a character at the current cursor 
position using the video BIOS to avoid the 
scrolling of the screen when writing to 
location (80,25). 
*/ 

void writechar(char ch) 
{ 
struct text_info ti; 
/* grab current text settings */ 
gettextinfo(&ti); 
/* interrupt 0x10 sub-function 9 */ 
_AH = 9; 
/* character to be output */ 
_AL = ch; 
_BH = 0; /* video page */ 
_BL = ti.attribute; /* video attribute */ 
_CX = 1; /* repetition factor */ 
geninterrupt(0x10); /* output the char */ 
} 



函数名: getarccoords 
功 能: 取得最后一次调用arc的坐标 
用 法: void far getarccoords(struct arccoordstype far *arccoords); 
程序例: 

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

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 
struct arccoordstype arcinfo; 
int midx, midy; 
int stangle = 45, endangle = 270; 
char sstr[80], estr[80]; 

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

midx = getmaxx() / 2; 
midy = getmaxy() / 2; 

/* draw arc and get coordinates */ 
setcolor(getmaxcolor()); 
arc(midx, midy, stangle, endangle, 100); 
getarccoords(&arcinfo); 

/* convert arc information into strings */ 
sprintf(sstr, "*- (%d, %d)", 
arcinfo.xstart, arcinfo.ystart); 
sprintf(estr, "*- (%d, %d)", 
arcinfo.xend, arcinfo.yend); 

/* output the arc information */ 
outtextxy(arcinfo.xstart, 
arcinfo.ystart, sstr); 
outtextxy(arcinfo.xend, 
arcinfo.yend, estr); 

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




函数名: getaspectratio 
功 能: 返回当前图形模式的纵横比 
用 法: void far getaspectratio(int far *xasp, int far *yasp); 
程序例: 

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

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

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

midx = getmaxx() / 2; 
midy = getmaxy() / 2; 
setcolor(getmaxcolor()); 

/* get current aspect ratio settings */ 
getaspectratio(&xasp, &yasp); 

/* draw normal circle */ 
circle(midx, midy, 100); 
getch(); 

/* draw wide circle */ 
cleardevice(); 
setaspectratio(xasp/2, yasp); 
circle(midx, midy, 100); 
getch(); 

/* draw narrow circle */ 
cleardevice(); 
setaspectratio(xasp, yasp/2); 
circle(midx, midy, 100); 

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




函数名: getbkcolor 
功 能: 返回当前背景颜色 
用 法: int far getbkcolor(void); 
程序例: 

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

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 
int bkcolor, midx, midy; 
char bkname[35]; 

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

midx = getmaxx() / 2; 
midy = getmaxy() / 2; 
setcolor(getmaxcolor()); 

/* for centering text on the display */ 
settextjustify(CENTER_TEXT, CENTER_TEXT); 

/* get the current background color */ 
bkcolor = getbkcolor(); 

/* convert color value into a string */ 
itoa(bkcolor, bkname, 10); 
strcat(bkname, 
" is the current background color."); 

/* display a message */ 
outtextxy(midx, midy, bkname); 

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




函数名: getc 
功 能: 从流中取字符 
用 法: int getc(FILE *stream); 
程序例: 

#include <stdio.h> 

int main(void) 
{ 
char ch; 

printf("Input a character:"); 
/* read a character from the 
standard input stream */ 
ch = getc(stdin); 
printf("The character input was: '%c'\n", 
ch); 
return 0; 
} 




函数名: getcbrk 
功 能: 获取Control_break设置 
用 法: int getcbrk(void); 
程序例: 

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

int main(void) 
{ 
if (getcbrk()) 
printf("Cntrl-brk flag is on\n"); 
else 
printf("Cntrl-brk flag is off\n"); 

return 0; 
} 



函数名: getch 
功 能: 从控制台无回显地取一个字符 
用 法: int getch(void); 
程序例: 

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

int main(void) 
{ 
char ch; 

printf("Input a character:"); 
ch = getche(); 
printf("\nYou input a '%c'\n", ch); 
return 0; 
} 



函数名: getchar 
功 能: 从stdin流中读字符 
用 法: int getchar(void); 
程序例: 

#include <stdio.h> 

int main(void) 
{ 
int c; 

/* Note that getchar reads from stdin and 
is line buffered; this means it will 
not return until you press ENTER. */ 

while ((c = getchar()) != '\n') 
printf("%c", c); 

return 0; 
} 



函数名: getche 
功 能: 从控制台取字符(带回显) 
用 法: int getche(void); 
程序例: 

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

int main(void) 
{ 
char ch; 

printf("Input a character:"); 
ch = getche(); 
printf("\nYou input a '%c'\n", ch); 
return 0; 
} 



函数名: getcolor 
功 能: 返回当前画线颜色 
用 法: int far getcolor(void); 
程序例: 

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

int main(void) 
{ 
/* request auto detection */ 
int gdriver = DETECT, gmode, errorcode; 
int color, midx, midy; 
char colname[35]; 

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

midx = getmaxx() / 2; 
midy = getmaxy() / 2; 
setcolor(getmaxcolor()); 

/* for centering text on the display */ 
settextjustify(CENTER_TEXT, CENTER_TEXT); 

/* get the current drawing color */ 
color = getcolor(); 

/* convert color value into a string */ 
itoa(color, colname, 10); 
strcat(colname, 
" is the current drawing color."); 

/* display a message */ 
outtextxy(midx, midy, colname); 

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



函数名: getcurdir 
功 能: 取指定驱动器的当前目录 
用 法: int getcurdir(int drive, char *direc); 
程序例: 

#include <dir.h> 
#include <stdio.h> 
#include <string.h> 

char *current_directory(char *path) 
{ 
strcpy(path, "X:\\"); /* fill string with form of response: X:\ */ 
path[0] = 'A' + getdisk(); /* replace X with current drive letter */ 
getcurdir(0, path+3); /* fill rest of string with current directory */ 
return(path); 
} 

int main(void) 
{ 
char curdir[MAXPATH]; 

current_directory(curdir); 
printf("The current directory is %s\n", curdir); 

return 0; 
} 



函数名: getcwd 
功 能: 取当前工作目录 
用 法: char *getcwd(char *buf, int n); 
程序例: 

#include <stdio.h> 
#include <dir.h> 

int main(void) 
{ 
char buffer[MAXPATH]; 

getcwd(buffer, MAXPATH); 
printf("The current directory is: %s\n", buffer); 
return 0; 
} 



函数名: getdate 
功 能: 取DOS日期 
用 法: void getdate(struct *dateblk); 
程序例: 

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

int main(void) 
{ 
struct date d; 

getdate(&d); 
printf("The current year is: %d\n", 
d.da_year); 
printf("The current day is: %d\n", 
d.da_day); 
printf("The current month is: %d\n", 
d.da_mon); 
return 0; 
} 



函数名: getdefaultpalette 
功 能: 返回调色板定义结构 
用 法: struct palettetype *far getdefaultpalette(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 i; 

/* structure for returning palette copy */ 
struct palettetype far *pal=(void *) 0; 

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

setcolor(getmaxcolor()); 

/* return a pointer to the default palette */ 
pal = getdefaultpalette(); 

for (i=0; i<16; i++) 
{ 
printf("colors[%d] = %d\n", i, 
pal->colors[i]); 
getch(); 
} 

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



函数名: getdisk 
功 能: 取当前磁盘驱动器号 
用 法: int getdisk(void); 
程序例: 

#include <stdio.h> 
#include <dir.h> 

int main(void) 
{ 
int disk; 

disk = getdisk() + 'A'; 
printf("The current drive is: %c\n", 
disk); 
return 0; 
} 




函数名: getdrivername 
功 能: 返回指向包含当前图形驱动程序名字的字符串指针 
用 法: char *getdrivename(void); 
程序例: 

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

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

/* stores the device driver name */ 
char *drivername; 

/* 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:"); 

⌨️ 快捷键说明

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