动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ C/C++教程 ]的信息



本月文章推荐
.C++箴言:谨慎使用私有继承.
.进程和线程编程.
.C++在网页设计中的应用.
.C程式中关于整数储存的说明.
.C语言入门之指针的慨念(1).
.C++中禁止异常信息传递到析构函数.
.一维数组.
.用C++访问SQL Server .
.C++箴言:拷贝一个对象的所有组成.
.C语言初学者入门讲座 第二讲 数据.
.创建用于 ASP.NET 的分页程序控件.
.水滴石穿C语言之可变参数问题.
.C语言表达式.
.C语言图形编程(四、图形文本-01).
.可怜的Bool——浅析程序可扩展性.
.新手入门:C/C++中的结构体.
.给MSN Messager装个钩子.
.在BCB中使用VCL控件数组.
.C语言入门之转移语句.
.Windows Sockets:从套接字类派生.

C语言库函数(I类字母)

发表日期:2008-3-8 |


  
函数名: imagesize 
功  能: 返回保存位图像所需的字节数 
用  法: unsigned far imagesize(int left, int top, int right, int bottom); 
程序例: 

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

#define ARROW_SIZE 10 

void draw_arrow(int x, int y); 

int main(void) 

   /* request autodetection */ 
   int gdriver = DETECT, gmode, errorcode; 
   void *arrow; 
   int x, y, maxx; 
   unsigned int size; 

   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 

   /* read result of initialization */ 
   errorcode = graphresult(); 
   if (errorcode != grOk)  /* an error occurred */ 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 
      exit(1); /* terminate with an error code */ 
   } 

   maxx = getmaxx(); 
   x = 0; 
   y = getmaxy() / 2; 

   /* draw the image to be grabbed */ 
   draw_arrow(x, y); 

   /* calculate the size of the image */ 
   size = imagesize(x, y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE); 

   /* allocate memory to hold the image */ 
   arrow = malloc(size); 

   /* grab the image */ 
   getimage(x, y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE, arrow); 

   /* repeat until a key is pressed */ 
   while (!kbhit()) 

   { 
      /* erase old image */ 
      putimage(x, y-ARROW_SIZE, arrow, XOR_PUT); 

      x += ARROW_SIZE; 
      if (x >= maxx) 
          x = 0; 

      /* plot new image */ 
      putimage(x, y-ARROW_SIZE, arrow, XOR_PUT); 
   } 

   /* clean up */ 
   free(arrow); 
   closegraph(); 
   return 0; 


void draw_arrow(int x, int y) 

   /* draw an arrow on the screen */ 
   moveto(x, y); 
   linerel(4*ARROW_SIZE, 0); 
   linerel(-2*ARROW_SIZE, -1*ARROW_SIZE); 
   linerel(0, 2*ARROW_SIZE); 
   linerel(2*ARROW_SIZE, -1*ARROW_SIZE); 

  
  
  

函数名: initgraph 
功  能: 初始化图形系统 
用  法: void far initgraph(int far *graphdriver, int far *graphmode, 
    char far *pathtodriver); 
程序例: 

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

int main(void) 

   /* request auto detection */ 
   int gdriver = DETECT, gmode, errorcode; 

   /* initialize graphics mode */ 
   initgraph(&gdriver, &gmode, ""); 

   /* read result of initialization */ 
   errorcode = graphresult(); 

   if (errorcode != grOk)  /* an error occurred */ 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 

      exit(1);             /* return with error code */ 
   } 

   /* draw a line */ 
   line(0, 0, getmaxx(), getmaxy()); 

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

  
  

函数名: inport 
功  能: 从硬件端口中输入 
用  法: int inp(int protid); 
程序例: 

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

int main(void) 

   int result; 
   int port = 0;  /* serial port 0 */ 

   result = inport(port); 
   printf("Word read from port %d = 0x%X\n", port, result); 
   return 0; 

  
  

函数名: insline 
功  能: 在文本窗口中插入一个空行 
用  法: void insline(void); 
程序例: 

#include <conio.h> 

int main(void) 

   clrscr(); 
   cprintf("INSLINE inserts an empty line in the text window\r\n"); 
   cprintf("at the cursor position using the current text\r\n"); 
   cprintf("background color.  All lines below the empty one\r\n"); 
   cprintf("move down one line and the bottom line scrolls\r\n"); 
   cprintf("off the bottom of the window.\r\n"); 
   cprintf("\r\nPress any key to continue:"); 
   gotoxy(1, 3); 
   getch(); 
   insline(); 
   getch(); 
   return 0; 

  
  
  

函数名: installuserdriver 
功  能: 安装设备驱动程序到BGI设备驱动程序表中 

用  法: int far installuserdriver(char far *name, int (*detect)(void)); 
程序例: 

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

/* function prototypes */ 
int huge detectEGA(void); 
void checkerrors(void); 

int main(void) 

   int gdriver, gmode; 

   /* install a user written device driver */ 
   gdriver = installuserdriver("EGA", detectEGA); 

   /* must force use of detection routine */ 
   gdriver = DETECT; 

   /* check for any installation errors */ 
   checkerrors(); 

   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 

   /* check for any initialization errors */ 
   checkerrors(); 

   /* draw a line */ 
   line(0, 0, getmaxx(), getmaxy()); 

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


/* detects EGA or VGA cards */ 
int huge detectEGA(void) 

   int driver, mode, sugmode = 0; 

   detectgraph(&driver, &mode); 
   if ((driver == EGA)  (driver == VGA)) 
      /* return suggested video mode number */ 
      return sugmode; 
   else 
      /* return an error code */ 
      return grError; 


/* check for and report any graphics errors */ 
void checkerrors(void) 

   int errorcode; 

   /* read result of last graphics operation */ 

   errorcode = graphresult(); 
   if (errorcode != grOk) 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 
      exit(1); 
   } 


函数名: installuserfont 
功  能: 安装未嵌入BGI系统的字体文件(CHR) 
用  法: int far installuserfont(char far *name); 
程序例: 

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

/* function prototype */ 
void checkerrors(void); 

int main(void) 

   /* request auto detection */ 
   int gdriver = DETECT, gmode; 
   int userfont; 
   int midx, midy; 

   /* initialize graphics and local variables */ 
   initgraph(&gdriver, &gmode, ""); 

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

   /* check for any initialization errors */ 
   checkerrors(); 

   /* install a user defined font file */ 
   userfont = installuserfont("USER.CHR"); 

   /* check for any installation errors */ 
   checkerrors(); 

   /* select the user font */ 
   settextstyle(userfont, HORIZ_DIR, 4); 

   /* output some text */ 
   outtextxy(midx, midy, "Testing!"); 

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


/* check for and report any graphics errors */ 
void checkerrors(void) 

   int errorcode; 

   /* read result of last graphics operation */ 

   errorcode = graphresult(); 
   if (errorcode != grOk) 
   { 
      printf("Graphics error: %s\n", grapherrormsg(errorcode)); 
      printf("Press any key to halt:"); 
      getch(); 
      exit(1); 
   } 
 } 
  
  
  

函数名: int86 
功  能: 通用8086软中断接口 
用  法: int int86(int intr_num, union REGS *inregs, union REGS *outregs); 
程序例: 

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

#define VIDEO 0x10 

void movetoxy(int x, int y) 

   union REGS regs; 

   regs.h.ah = 2;  /* set cursor postion */ 
   regs.h.dh = y; 
   regs.h.dl = x; 
   regs.h.bh = 0;  /* video page 0 */ 
   int86(VIDEO, ®s, ®s); 


int main(void) 

   clrscr(); 
   movetoxy(35, 10); 
   printf("Hello\n"); 
   return 0; 

  
  

函数名: int86x 
功  能: 通用8086软中断接口 
用  法: int int86x(int intr_num, union REGS *insegs, union REGS *outregs, 
     strUCt SREGS *segregs); 
程序例: 

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

int main(void) 

   char filename[80]; 
   union REGS inregs, outregs; 
   struct SREGS segregs; 

   printf("Enter filename: "); 
   gets(filename); 
   inregs.h.ah = 0x43; 
   inregs.h.al = 0x21; 
   inregs.x.dx = FP_OFF(filename); 

   segregs.ds = FP_SEG(filename); 
   int86x(0x21, &inregs, &outregs, &segregs); 
   printf("File attribute: %X\n", outregs.x.cx); 
   return 0; 

  
  
  

函数名: intdos 
功  能: 通用DOS接口 
用  法: int intdos(union REGS *inregs, union REGS *outregs); 
程序例: 

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

/* deletes file name; returns 0 on success, nonzero on failure */ 
int delete_file(char near *filename) 

   union REGS regs; 
   int ret; 
   regs.h.ah = 0x41;                            /* delete file */ 
   regs.x.dx = (unsigned) filename; 
   ret = intdos(®s, ®s); 

   /* if carry flag is set, there was an error */ 
   return(regs.x.cflag ? ret : 0); 


int main(void) 

   int err; 
   err = delete_file("NOTEXIST.$$$"); 
   if (!err) 
      printf("Able to delete NOTEXIST.$$$\n"); 
   else 
      printf("Not Able to delete NOTEXIST.$$$\n"); 
   return 0; 

  
  
  

函数名: intdosx 
功  能: 通用DOS中断接口 
用  法: int intdosx(union REGS *inregs, union REGS *outregs, 
      struct SREGS *segregs); 
程序例: 

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

/* deletes file name; returns 0 on success, nonzero on failure */ 
int delete_file(char far *filename) 

   union REGS regs; struct SREGS sregs; 
   int ret; 

   regs.h.ah = 0x41;                      /* delete file */ 
   regs.x.dx = FP_OFF(filename); 
   sregs.ds = FP_SEG(filename); 
   ret = intdosx(®s, ®s, &sregs); 

   /* if carry flag is set, there was an error */ 
   return(regs.x.cflag ? ret : 0); 


int main(void) 

   int err; 
   err = delete_file("NOTEXIST.$$$"); 
   if (!err) 
      printf("Able to delete NOTEXIST.$$$\n"); 
   else 
      printf("Not Able to delete NOTEXIST.$$$\n"); 
   return 0; 

  
  

函数名: intr 
功  能: 改变软中断接口 
用  法: void intr(int intr_num, struct REGPACK *preg); 
程序例: 

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

#define CF 1  /* Carry flag */ 

int main(void) 

   char Directory[80]; 
   struct REGPACK reg; 

   printf("Enter directory to change to: "); 
   gets(directory); 
   reg.r_ax = 0x3B << 8;         /* shift 3Bh into  AH */ 
   reg.r_dx = FP_OFF(directory); 
   reg.r_ds = FP_SEG(directory); 
   intr(0x21, ®); 
   if (reg.r_flags & CF) 
      printf("Directory change failed\n"); 
   getcwd(directory, 80); 
   printf("The current directory is: %s\n", directory); 
   return 0; 

  
  

函数名: ioctl 

功  能: 控制I/O设备 
用  法: int ioctl(int handle, int cmd[,int *argdx, int argcx]); 
程序例: 

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

int main(void) 

   int stat; 

   /* use func 8 to determine if the default drive is removable */ 
   stat = ioctl(0, 8, 0, 0); 
   if (!stat) 
      printf("Drive %c is removable.\n", getdisk() + 'A'); 
   else 
      printf("Drive %c is not removable.\n", getdisk() + 'A'); 
   return 0; 

  
  
  

函数名: isatty 
功  能: 检查设备类型 
用  法: int isatty(int handle); 
程序例: 

#include <stdio.h> 
#include <io.h> 

int main(void) 

   int handle; 

   handle = fileno(stdprn); 
   if (isatty(handle)) 
      printf("Handle %d is a device type\n", handle); 
   else 
      printf("Handle %d isn't a device type\n", handle); 
   return 0; 

  
  
  

函数名: itoa 
功  能: 把一整数转换为字符串 
用  法: char *itoa(int value, char *string, int radix); 
程序例: 

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

int main(void) 

   int number = 12345; 
   char string[25]; 

   itoa(number, string, 10); 
   printf("integer = %d string = %s\n", number, string); 
   return 0; 


上一篇:C语言库函数(G类字母) 人气:335
下一篇:C语言库函数(H类字母) 人气:267
浏览全部C/C++的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-6 飞天论坛FTBBS ASP v6.3 Build 0
2008-7-6 飞天论坛FTBBS ASP v6.3 Build 0
2008-7-6 飞天论坛FTBBS ASP v6.8 Build 0
2008-7-6 讯息内容管理系统 v2.1
2008-7-6 三五电影程序 v2.0
2008-7-6 神鹰腾讯小说小偷 v3.0
2008-7-6 EasyIDE Framework v1.0 Build 2
2008-7-6 品告CMS系统(电影版) v0.9
2008-7-6 QQ自动登录器 C# 源码 v1.0
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 GoodCalculator2.0版固件计算器
2008-7-5 RepoName源地址搜索工具 v1.21b
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 TouchCopy多媒体管理软件 v3.13完
2008-7-5 VideosTone视频铃声 v1.1汉化破解
2008-7-5 TouchPad触摸板 v4.44破解版
2008-7-5 VideosTone破解补丁 v1.0
2008-7-5 Feeds GoogleReader客户端 v0.4.3


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報