C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. setvect函数
setvect函数的功能是设置中断矢量入口,其用法为:void setvect(int intr_num, void interrupt(*isr)());程序实例如下:
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#define INTR 0X1C
void interrupt ( *oldhandler)(void);
int count=0;
void interrupt handler(void)
{
count++;
oldhandler();
}
int main(void)
{
oldhandler = getvect(INTR);
setvect(INTR, handler);
while (count < 20)
printf("count is %d/n",count);
setvect(INTR, oldhandler);
return 0;
}
2. setverify函数
setverify函数的功能是设置验证状态,其用法为void setverify(int value);程序实例代码如下:
#include <stdio.h>
#include <conio.h>
#include <dos.h>
int main(void)
{
int verify_flag;
printf("Enter 0 to set verify flag off/n");
printf("Enter 1 to set verify flag on/n");
verify_flag = getch() - 0;
setverify(verify_flag);
if (getverify())
printf("DOS verify flag is on/n");
else
printf("DOS verify flag is off/n");
return 0;
}
3. setviewport函数
setviewport函数的功能是为图形输出设置当前视口, 其用法为:void far setviewport(int left, int top, int right,int bottom, int clipflag);程序实例代码如下:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#define CLIP_ON 1
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);
}
setcolor(getmaxcolor());
outtextxy(0, 0, "* <-- (0, 0) in default viewport");
setviewport(50, 50, getmaxx()-50, getmaxy()-50, CLIP_ON);
outtextxy(0, 0, "* <-- (0, 0) in smaller viewport");
getch();
closegraph();
return 0;
}
4. setvisualpage函数
setvisualpage函数的功能是设置可见图形页号,其用法为:void far setvisualpage(int pagenum);程序实例代码如下:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
int gdriver = EGA, gmode = EGAHI, errorcode;
int x, y, ht;
initgraph(&gdriver, &gmode, "");
errorcode = graphresult();
if (errorcode != grOk)
{
printf("Graphics error: %s/n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
}
x = getmaxx() / 2;
y = getmaxy() / 2;
ht = textheight("W");
setactivepage(1);
line(0, 0, getmaxx(), getmaxy());
settextjustify(CENTER_TEXT, CENTER_TEXT);
outtextxy(x, y, "This is page #1:");
outtextxy(x, y+ht, "Press any key to halt:");
setactivepage(0);
outtextxy(x, y, "This is page #0.");
outtextxy(x, y+ht, "Press any key to view page #1:");
getch();
setvisualpage(1);
getch();
closegraph();
return 0;
}