C语言函数大全--g开头的函数(上) Posted 2023-04-09 Huazie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言函数大全--g开头的函数(上)相关的知识,希望对你有一定的参考价值。
C语言函数大全
本篇介绍C语言函数大全–g开头的函数(上)
1. gcvt
1.1 函数说明
函数声明 函数功能 char *gcvt(double value, int ndigit, char *buf);
把浮点数转换成字符串,同时返回一个指向字符串的存储位置的指针的函数。
参数: value: 被转换的值。 ndigit: 存储的有效数字位数。 buf: 结果的存储位置。
注意: gcvt 函数把一个浮点值转换成一个字符串 (包括一个小数点和可能的符号字节) 并存储该字符串在 buffer 中。该 buffer 应足够大以便容纳转换的值加上结尾的 结束符 '\\0'
,它是自动添加的。 如果一个缓冲区的大小为 ndigit + 1 ,则 gcvt 函数将覆盖该缓冲区的末尾。这是因为转换的字符串包括一个小数点以及可能包含符号和指数信息。
1.2 演示示例
# include <stdlib.h>
# include <stdio.h>
int main ( void )
char str[ 25 ] ;
double num;
int sig = 5 ;
num = 1.23 ;
gcvt ( num, sig, str) ;
printf ( "string = %s\\n" , str) ;
num = - 456.78912 ;
gcvt ( num, sig, str) ;
printf ( "string = %s\\n" , str) ;
num = 0.345e5 ;
gcvt ( num, sig, str) ;
printf ( "string = %s\\n" , str) ;
return ( 0 ) ;
1.3 运行结果
2. getarccoords
2.1 函数说明
函数声明 函数功能 void getarccoords(struct arccoordstype *arccoords);
取最后一次调用arc的坐标
2.2 演示示例
# include <graphics.h>
# include <stdlib.h>
# include <stdio.h>
# include <conio.h>
int main ( )
int gdriver = DETECT, gmode, errorcode;
struct arccoordstype arcinfo;
int midx, midy;
int stangle = 45 , endangle = 270 ;
char sstr[ 80 ] , estr[ 80 ] ;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
midx = getmaxx ( ) / 2 ;
midy = getmaxy ( ) / 2 ;
setcolor ( getmaxcolor ( ) ) ;
arc ( midx, midy, stangle, endangle, 100 ) ;
getarccoords ( & arcinfo) ;
sprintf ( sstr, "*- (%d, %d)" , arcinfo. xstart, arcinfo. ystart) ;
sprintf ( estr, "*- (%d, %d)" , arcinfo. xend, arcinfo. yend) ;
outtextxy ( arcinfo. xstart, arcinfo. ystart, sstr) ;
outtextxy ( arcinfo. xend, arcinfo. yend, estr) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
2.3 运行结果
3. getbkcolor
3.1 函数说明
函数声明 函数功能 int getbkcolor(void);
获取当前背景颜色
颜色值 英文枚举 中文描述 0 BLACK 黑 1 BLUE 蓝 2 GREEN 绿 3 CYAN 青 4 RED 红 5 MAGENTA 洋红 6 BROWN 棕 7 LIGHTGRAY 淡灰 8 DARKGRAY 深灰 9 LIGHTBLUE 淡兰 10 LIGHTGREEN 淡绿 11 LIGHTCYAN 淡青 12 LIGHTRED 淡红 13 LIGHTMAGENTA 淡洋红 14 YELLOW 黄 15 WHITE 白
3.2 演示示例
# include <graphics.h>
# include <stdlib.h>
# include <string.h>
# include <stdio.h>
# include <conio.h>
int main ( void )
int gdriver = DETECT, gmode, errorcode;
int bkcolor, midx, midy;
char bkname[ 35 ] ;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
midx = getmaxx ( ) / 2 ;
midy = getmaxy ( ) / 2 ;
setcolor ( getmaxcolor ( ) ) ;
settextjustify ( CENTER_TEXT, CENTER_TEXT) ;
cleardevice ( ) ;
for ( int i = WHITE; i >= 0 ; i-- )
setbkcolor ( i) ;
bkcolor = getbkcolor ( ) ;
if ( i == WHITE) setcolor ( BLACK) ;
else setcolor ( WHITE) ;
itoa ( bkcolor, bkname, 10 ) ;
strcat ( bkname, " is the current background color." ) ;
outtextxy ( midx, midy, bkname) ;
getch ( ) ;
cleardevice ( ) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
3.3 运行结果
4. getc
4.1 函数说明
函数声明 函数功能 int getc(FILE *stream);
从流中取字符
4.2 演示示例
# include <stdio.h>
int main ( )
char ch;
printf ( "Input a character:" ) ;
ch = getc ( stdin ) ;
printf ( "The character input was: '%c'\\n" , ch) ;
return 0 ;
4.3 运行结果
5. getchar
5.1 函数说明
函数声明 函数功能 int getchar(void);
从 stdin 流中读字符
5.2 演示示例
# include <stdio.h>
int main ( void )
int c;
while ( ( c = getchar ( ) ) != '\\n' )
printf ( "%c " , c) ;
return 0 ;
5.3 运行结果
6. getcolor
6.1 函数说明
函数声明 函数功能 int getcolor(void);
当前画线的颜色
颜色值 英文枚举 中文描述 0 BLACK 黑 1 BLUE 蓝 2 GREEN 绿 3 CYAN 青 4 RED 红 5 MAGENTA 洋红 6 BROWN 棕 7 LIGHTGRAY 淡灰 8 DARKGRAY 深灰 9 LIGHTBLUE 淡兰 10 LIGHTGREEN 淡绿 11 LIGHTCYAN 淡青 12 LIGHTRED 淡红 13 LIGHTMAGENTA 淡洋红 14 YELLOW 黄 15 WHITE 白
6.2 演示示例
# include <graphics.h>
int main ( void )
int gdriver = DETECT, gmode, errorcode;
int color, midx, midy;
char colname[ 35 ] ;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
midx = getmaxx ( ) / 2 ;
midy = getmaxy ( ) / 2 ;
setcolor ( getmaxcolor ( ) ) ;
settextjustify ( CENTER_TEXT, CENTER_TEXT) ;
for ( int i = WHITE; i > 0 ; i-- )
color = getcolor ( ) ;
itoa ( color, colname, 10 ) ;
strcat ( colname, " is the current drawing color." ) ;
outtextxy ( midx, midy, colname) ;
getch ( ) ;
cleardevice ( ) ;
setcolor ( i - 1 ) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
6.3 运行结果
7. getcwd
7.1 函数说明
函数声明 函数功能 char *getcwd(char *buffer, int maxlen);
获取当前工作目录
注意:getcwd 函数是将当前工作目录的绝对路径复制到参数 buffer 所指的内存空间中,参数 maxlen 为 buffer 的空间大小。
7.2 演示示例
# include <stdio.h>
# include <dir.h>
# define MAXPATH 1000
int main ( )
char buffer[ MAXPATH] ;
getcwd ( buffer, MAXPATH) ;
printf ( "The current directory is: %s\\n" , buffer) ;
return 0 ;
7.3 运行结果
8. getdefaultpalette
8.1 函数说明
函数声明 函数功能 struct palettetype* getdefaultpalette(void);
获取调色板定义结构
8.2 演示示例
# include <graphics.h>
# include <stdlib.h>
# include <stdio.h>
int main ( void )
int gdriver = DETECT, gmode, errorcode;
int i, midx, midy; ;
struct palettetype far * pal= NULL ;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
midx = getmaxx ( ) / 3 ;
midy = getmaxy ( ) / 2 ;
setcolor ( getmaxcolor ( ) ) ;
pal = getdefaultpalette ( ) ;
char buffer[ 100 ] ;
for ( i= BLACK; i< WHITE + 1 ; i++ )
sprintf ( buffer, "colors[%d] = %d" , i, pal-> colors[ i] ) ;
outtextxy ( midx, midy, buffer) ;
getch ( ) ;
cleardevice ( ) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
8.3 运行结果
9. getdrivername
9.1 函数说明
函数声明 函数功能 char *getdrivename(void);
获取当前图形驱动程序名字
9.2 演示示例
# include <graphics.h>
# include <stdlib.h>
# include <stdio.h>
# include <conio.h>
int main ( void )
int gdriver = DETECT, gmode, errorcode;
char * drivername;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
setcolor ( getmaxcolor ( ) ) ;
drivername = getdrivername ( ) ;
settextjustify ( CENTER_TEXT, CENTER_TEXT) ;
outtextxy ( getmaxx ( ) / 2 , getmaxy ( ) / 2 , drivername) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
9.3 运行结果
10. getfillpattern
10.1 函数说明
函数声明 函数功能 void getfillpattern(char *upattern);
将用户定义的填充模式拷贝到内存中
10.2 演示示例
# include <graphics.h>
# include <stdio.h>
int main ( void )
int gdriver = DETECT, gmode, errorcode;
int maxx, maxy;
char pattern[ 8 ] = 0x00 , 0x70 , 0x20 , 0x27 , 0x25 , 0x27 , 0x04 , 0x04 ;
initgraph ( & gdriver, & gmode, "" ) ;
errorcode = graphresult ( ) ;
if ( errorcode != grOk)
printf ( "Graphics error: %s\\n" , grapherrormsg ( errorcode) ) ;
printf ( "Press any key to halt:" ) ;
getch ( ) ;
exit ( 1 ) ;
maxx = getmaxx ( ) ;
maxy = getmaxy ( ) ;
setcolor ( getmaxcolor ( ) ) ;
setfillpattern ( pattern, getmaxcolor ( ) ) ;
bar ( 0 , 0 , maxx, maxy) ;
getch ( ) ;
getfillpattern ( pattern) ;
pattern[ 0 ] += 1 ;
pattern[ 1 ] -= 2 ;
pattern[ 2 ] += 3 ;
pattern[ 3 ] -= 4 ;
pattern[ 4 ] += 5 ;
pattern[ 5 ] -= 6 ;
pattern[ 6 ] += 7 ;
pattern[ 7 ] -= 8 ;
setfillpattern ( pattern, getmaxcolor ( ) ) ;
bar ( 0 , 0 , maxx, maxy) ;
getch ( ) ;
closegraph ( ) ;
return 0 ;
10.3 运行结果
11. getfillsettings
11.1 函数说明
函数声明 函数功能 void getfillsettings(struct fillsettingstype *fillinfo);
获取有关当前填充模式和填充颜色的信息
11.2 演示示例
# include <graphics.h>
# include <stdlib.h>
# include <stdio.h>
char * fname[ ] = "EMPTY_FILL" ,
"SOLID_FILL" ,
"LINE_FILL" ,
"LTSLASH_FILL" ,
"SLASH_FILL" ,
"BKSLASH_FILL" ,
"LTBKSLASH_FILL" ,
"HATCH_FILL" ,
"XHATCH_FILL" ,
"INTERLEAVE_FILL" ,
"WIDE_DOT_FILL" ,
"CLOSE_DOT_FILL" ,
"USER_FILL"
;
int main ( )
int gdriver = DETECT, gmode, errorcode;
struct fillsettingstype fillinfo;
int midx, midy;
char patstr[ 40 ] , colstr[ 40 ] ;
initgraph ( & gdriverC语言中。如果编写了一个函数,想在不同源文件中调用。
要怎么把这个函数编译,用记事本可以吗,改成什么扩展名。是不是要和调用改函数的程序放在同一个文件夹中才可以调用?具体方法呢?
在你要调用的程序文件里包含被调用程序的头文件,如1.h,1.c,在1.c里定义好了你的函数"void print_xxx(){}",在1.h里申明"void print_xxx();"了这个,然后另一个文件就可以调用了,文件的开头写上:#include "1.h"
参考技术A
可以的。编辑成EXE文件,用cmd命令调用就可以了
参考技术B
改成.h(头文件),使用时加上#include "头文件名.h" 就行了
以上是关于C语言函数大全--g开头的函数(上)的主要内容,如果未能解决你的问题,请参考以下文章
c语言string的用法大全
c语言常用函数
C语言中。如果编写了一个函数,想在不同源文件中调用。
C语言库函数如何编写?
能列举些C语言中比较常见重要库函数的用法吗?
C语言库函数的相关概念