当前位置: 首页 > 图文教程 > 开发语言 > C/C++ > C/C++:小编谈C语言函数那些事(23)
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. settextstyle函数
settextstyle函数的功能是为图形输出设置当前的文本属性,其用法为:void far settextstyle (int font, int direction, char size);程序实例如下:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
char *fname[] = { "DEFAULT font",
"TRIPLEX font",
"SMALL font",
"SANS SERIF font",
"GOTHIC font"
};
int main(void)
{
int gdriver = DETECT, gmode, errorcode;
int style, midx, midy;
int size = 1;
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;
settextjustify(CENTER_TEXT, CENTER_TEXT);
for (style=DEFAULT_FONT; style<=GOTHIC_FONT; style++)
{
cleardevice();
if (style == TRIPLEX_FONT)
size = 4;
settextstyle(style, HORIZ_DIR, size);
outtextxy(midx, midy, fname[style]);
getch();
}
/* clean up */
closegraph();
return 0;
}
2. settime函数
settime函数的功能是设置系统时间,其用法为void settime(struct time *timep);程序实例代码如下:
#include <stdio.h>
#include <dos.h>
int main(void)
{
struct time t;
gettime(&t);
printf("The current minute is: %d\n", t.ti_min);
printf("The current hour is: %d\n", t.ti_hour);
printf("The current hundredth of a second is: %d\n", t.ti_hund);
printf("The current second is: %d\n", t.ti_sec); t.ti_min++;
settime(&t);
return 0;
}
3. setusercharsize函数
setusercharsize函数的功能是为矢量字体改变字符宽度和高度, 其用法为:void far setusercharsize(int multx, int dirx, int multy, int diry);程序实例代码如下:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "");
errorcode = graphresult();
if (errorcode != grOk)
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
}
settextstyle(TRIPLEX_FONT, HORIZ_DIR, 4);
moveto(0, getmaxy() / 2);
outtext("Norm ");
setusercharsize(1, 3, 1, 1);
outtext("Short ");
setusercharsize(3, 1, 1, 1);
outtext("Wide");
getch();
closegraph();
return 0;
}
4. setvbuf函数
setvbuf函数的功能是把缓冲区与流相关,其用法为:int setvbuf(FILE *stream, char *buf, int type, unsigned size);程序实例代码如下:
#include <stdio.h>
int main(void)
{
FILE *input, *output;
char bufr[512];
input = fopen("file.in", "r+b");
output = fopen("file.out", "w");
if (setvbuf(input, bufr, _IOFBF, 512) != 0)
printf("failed to set up buffer for input file\n");
else
printf("buffer set up for input file\n");
if (setvbuf(output, NULL, _IOLBF, 132) != 0)
printf("failed to set up buffer for output file\n");
else
printf("buffer set up for output file\n");
fclose(input);
fclose(output);
return 0;
}
评论 (0) All