IO day2(fseed/ftell)

本文介绍了C语言标准库中的fseek函数用于修改文件指针的位置,以及ftell函数用于获取当前文件指针的偏移量。通过SEEK_SET、SEEK_CUR和SEEK_END宏,可以实现对文件开头、当前位置和结尾的定位。示例代码演示了如何使用这些函数确定文件的大小。
摘要由CSDN通过智能技术生成

 

fseek

功能:将文件偏移量修改到指定位置;
原型:
       #include <stdio.h>

       int fseek(FILE *stream, long offset, int whence);
参数:
    FILE *stream:指定要修改偏移量的文件对应的流指针;
    long offset:距离whence的偏移量:若想要往后偏移,则填正数;若想往前偏移,则填负数;
    int whence:
         SEEK_SET,      文件开头位置
         SEEK_CUR,      文件当前位置
         SEEK_END,      文件结尾位置
返回值:
    成功,返回0;
    失败,返回-1,  更新errno;
                             
将偏移量修改到文件开头         
void rewind(FILE *stream);   ===》 fseek(fp, 0, SEEK_SET);

ftell

功能:获取文件当前位置距离文件开头的偏移量;
原型:         
       long ftell(FILE *stream);
返回值:
    文件当前位置距离文件开头的偏移量;
    
    fseek(fp, 0, SEEK_END);     //将偏移量修改到结尾
    long size = ftell(fp);
    printf("size = %ld\n", size);
#include<stdio.h>

int main(int argc, const char *argv[])
{
	FILE *fp=fopen("./02_std.c","r");
	if(NULL==fp)
	{
	perror("fopen");
	return -1;
	}
int a=fseek(fp,0,SEEK_END);
int b=ftell(fp);
printf("a=%d\n",a);
printf("b=%d\n",b);


fclose(fp);
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值