站長資訊網
        最全最豐富的資訊網站

        C語言函數大全 i

        函數名: 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: %sn”, 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: %sn”, 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%Xn”, port, result);
           return 0;
        }
         
         

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

        #include <conio.h>

        int main(void)
        {
           clrscr();
           cprintf(“INSLINE inserts an empty line in the text windowrn”);
           cprintf(“at the cursor position using the current textrn”);
           cprintf(“background color.  All lines below the empty onern”);
           cprintf(“move down one line and the bottom line scrollsrn”);
           cprintf(“off the bottom of the window.rn”);
           cprintf(“rnPress 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: %sn”, 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: %sn”, 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, &regs, &regs);
        }

        int main(void)
        {
           clrscr();
           movetoxy(35, 10);
           printf(“Hellon”);
           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: %Xn”, 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(&regs, &regs);

           /* 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(&regs, &regs, &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, &reg);
           if (reg.r_flags & CF)
              printf(“Directory change failedn”);
           getcwd(directory, 80);
           printf(“The current directory is: %sn”, 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 typen”, handle);
           else
              printf(“Handle %d isn’t a device typen”, 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 = %sn”, number, string);
           return 0;
        }

         

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 乱人伦人妻精品一区二区| 国产系列高清精品第一页| 亚洲精品综合一二三区在线| 亚洲国模精品一区| 天天爽夜夜爽精品视频app| 久久久无码精品亚洲日韩蜜臀浪潮| 成人精品一区二区三区免费看 | 国产精品偷窥熟女精品视频| 国内揄拍高清国内精品对白| 欧美精品在线视频| 国产精品色视频ⅹxxx | 久久精品国产亚洲精品| 777久久精品一区二区三区无码| 精品熟女少妇a∨免费久久| 亚欧无码精品无码有性视频| 国产亚洲精品影视在线产品 | 国产精品视频一区二区噜噜 | 中文字幕日本精品一区二区三区| 国产精品一区二区av不卡| 日本精品久久久中文字幕| 97精品人妻系列无码人妻| 久久精品国产亚洲av日韩| 在线精品无码字幕无码AV| 欧美精品播放| 欧美国产精品久久高清| 国产欧美日本亚洲精品一5| 北条麻妃国产九九九精品视频 | 免费精品视频在线| 精品国产毛片一区二区无码| 国产精品主播一区二区| 中文字幕一区二区精品区| 奇米精品一区二区三区在线观看 | 免费看污污的网站欧美国产精品不卡在线观看| 国产精品v欧美精品v日本精| 99热精品毛片全部国产无缓冲| 欧美精品免费在线| 99热日韩这里只有精品| 国产玖玖玖九九精品视频| 国产美女精品视频| 欧美精品亚洲人成在线观看| 青春草无码精品视频在线观|