当前位置: 首页 > 图文教程 > 开发语言 > C/C++ > C/C++:小编谈C语言函数那些事(24)

C/C++
2009年编程开发语言的使用率
C++对象模型笔记:dynamic binding
cstl -- c语言编写通用数据结构和常用算法库(模仿SGI STL)
子串匹配:不回溯算法
C++ Builder 访问 USB 口的方法
C++中二维数组的动态分配
数组和指针在编译的时候的区别
如何利用doxygen生成pdf文档
有关C++析构函数的异常(Exceptions in Destructors)
C++模板学习之函数对象之谓词
5月编程语言排行榜:D语言风采不再
一个C++类实现文件全盘搜索
C语言编程宝典之一 读书笔记
C语言嵌入式系统编程修炼(内存操作)
C++内存管理
带头结点的双循环链表
有关VA_LIST的用法
C++标准库简介(转)
一个栈类的实现(链栈)
C 引用与指针的比较

C/C++:小编谈C语言函数那些事(24)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 47 ::
收藏到网摘: n/a

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;

}