C语言 文件定位

Python013

C语言 文件定位,第1张

C语言文件定位,主要依靠fseek函数实现,具体代码如下,

#include <stdio.h>

int main(int argc, char *argv[])

{

FILE *fp=NULL

long len=0L//文件长度

fp=fopen("test.dat","rb")//假设当前目录有test.dat文件

if(!fp)//检查文件打开是否正常

{

printf("文件打开失败,程序退出!\n")

exit(1)

}

fseek(fp,0L,SEEK_END)//文件定位到文件末尾

len=ftell(fp)//获取文件长度

if(len/1024>0)

printf("文件大小为%ldKB!\n",len/1024)

else

printf("文件大小为%ldB!\n",len)

rewind(fp)//文件指针移到开始处

if(fp)//关闭文件

{

fclose(fp)

fp=NULL

}

return 0

}

int fseek( FILE *stream, long offset, int origin )函数fseek()为文件指针stream设置位置数据。origin的值应该是下列值之一,

SEEK_SET(从文件的开始处开始搜索)

SEEK_CUR(从当前位置开始搜索)

SEEK_END(从文件的结束处开始搜索)

fseek()成功时返回0,失败时返回非零。

c语言的文件定位是fseek函数fseek(文件指针,位偏移,起始点);起始点c提供了文件开始

文件当前位置

文件末尾三个值分别对应0

1

2,位偏移是只偏移多少个字节而不是几行c语言貌似不支持以行的形式移动指针

例:fseek(fp,100L,0)将位置指针移到离文件头100个字节处

如果第二个参数是负数的就是后退多少字节

1.2 C 语言的特点

C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的

功能。许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。

用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了, 象PC- DOS 、

WORDSTAR等就是用这种方法编写的。归纳起来C 语言具有下列特点:

1. C是中级语言

它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以象

汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。

2. C是结构式语言

结构式语言的显著特点是代码及数据的分隔化, 即程序的各个部分除了必要的

信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调

试。C 语言是以函数形式提供给用户的, 这些函数可方便的调用, 并具有多种循

环、条件语句控制程序流向, 从而使程序完全结构化。

3. C语言功能齐全

C 语言具有各种各样的数据类型, 并引入了指针概念, 可使程序效率更高。另

外C 语言也具有强大的图形功能, 支持多种显示器和驱动器。而且计算功能、逻辑

判断功能也比较强大, 可以实现决策目的。

4. C语言适用范围大

C 语言还有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于

多种机型。