fseek fread fwrite fgetc fgets的用法

函数名: fgets

  功 能: 从流中读取一字符串

  用 法: char *fgets(char *string, int n, FILE *stream);

  形参注释:*string结果数据的首地址;n-1:一次读入数据块的长度,其默认值为1k,即1024;stream文件指针

fgetc:  从流中读取字符

 

fseek 1.函数功能
  用来读写一个数据块。

2.一般调用形式
  fread(buffer,size,count,fp);
  fwrite(buffer,size,count,fp);

3.说明
  (1)buffer:是一个指针,对fread来说,它是读入数据的存放地址。对fwrite来说,是要输出数据的地址。
  (2)size:要读写的字节数;
  (3)count:要进行读写多少个size字节的数据项;
  (4)fp:文件型指针。

4.例:

1.fread(&id,1,10,f)就是把f里面的值读到id里面,每次读1个字节,一共读10次,或者把id里面的值都读完,不到10次也会停止。

2.fwrite(&id,1,10,f)就是把id里面的值读到f里面,每次读1个字节,一共读10次或是fread(&id,10,1,f)就是把id里面的值读到里面,每次读10个字节,一共读1次。

函数名: fseek
功  能: 重定位流上的文件指针
用  法: int fseek(FILE *stream, long offset, int fromwhere);
程序例:

#include <stdio.h>

long filesize(FILE *stream);

int main(void)
{
   FILE *stream;

   stream = fopen("MYFILE.TXT", "w+");
   fprintf(stream, "This is a test");
   printf("Filesize of MYFILE.TXT is %ld bytes/n", filesize(stream));
   fclose(stream);
   return 0;
}

long filesize(FILE *stream)
{
   long curpos, length;

   curpos = ftell(stream);
   fseek(stream, 0L, SEEK_END);
   length = ftell(stream);
   fseek(stream, curpos, SEEK_SET);
   return length;
}
调用形式


  #include"stdio.h"

  fseek(文件类型指针fp,位移量,起始点)

    函数功能:把与fp有关的文件位置指针放到一个指定位置。

    其中,“位移量”是long型数据,它表示位置指针相对于“起始点”移动的字节数。如果位移量是一个正数,表示从“起始点”开始往文件尾方向移动;如果位移量是一个负数,则表示从“起始点”开始往文件头方向移动。

    “起始点”不能任意设定,它只能是在stdio.h中定义的三个符号常量之一:

起始点

对应的数字

  代表的文件位置

SEEK_SET

0   文件开头

SEEK_CUR

1   文件当前位置

SEEK_END

2   文件末尾

    例如:

        fseek(fp,50L,0);或fseek(fp,50L,SEEK_SET);

    其作用是将位置指针移到离文件头50个字节处。

 

putpixel函数:

putpixel(int x,int y,int color)

x,y为坐标,color为颜色值.该函数在(x,y)点设定象素的颜色.由于硬件的不同,也许提供的函数不同,用户可把此函数作为参考,必要时用硬件提供的函数取而代之.

 原型:extern void putpixel(int x, int y, int mode);

  用法:#include <system.h>

  功能:在屏幕的指定位置上画点

 

  说明:(x,y)为屏幕上点的坐标,mode值含义如下:

        mode=0:清除(xy)处的点

             1:在(xy)处画点

             2:将(xy)处的点的状态取反

     

  举例:

 

      // pixel.c

     

      #include <system.h>

 

      main()

      {

        int i,j;

       

        clrscr();

        printf("V");

        gotoxy(10,10);  // Hide cursor

       

        for(i=0;i<8;i++)

          for(j=0;j<16;j++)

          {

            if(getpixel(i,j))

              putpixel(10+i,10+j,1);

            else

              putpixel(10+i,10+j,0);

          }

       getchar();

       return 0;

      }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值