您的位置:首页 > 编程语言 > C语言/C++

C语言技巧

2016-01-14 16:37 393 查看
system("cls"); 清屏函数

getch() <conio.h> 不在屏幕上回显

fflush(stdin); 清除缓存区

函数名: rewind

功 能: 将文件指针重新指向一个流的开头

用 法: int rewind(FILE *stream);

fread   

功 能: 从一个流中读数据   

函数原型: size_t fread(void*buffer,size_tsize,size_tcount,FILE*stream);    

参 数:   1.用于接收数据的地址(指针)(buffer)

  2.单个元素的大小(size) :单位是字节而不是位,例如读取一个int型数据就是4个字节

  3.元素个数(count)

  4.提供数据的文件指针(stream)  

 返回值:读取的元素的个数

fwrite()

 size_t fwrite(const void* buffer,size_t size,size_t count,FILE* stream);   

注意:这个函数以二进制形式对文件进行操作,不局限于文本文件   

返回值:返回实际写入的数据块数目   

(1)buffer:是一个指针,对fwrite来说,是要输出数据的地址。   

(2)size:要写入内容的单字节数;   

(3)count:要进行写入size字节的数据项的个数;   

(4)stream:目标文件指针。   

(5)返回实际写入的数据项个数count   

说明:写入到文件的哪里? 这个与文件的打开模式有关,如果是w+,则是从file pointer指向的地址开始写,替换掉之后的内容,文件的长度可以不变,stream的位置移动count个数;如果是a+,则从文件的末尾开始添加,文件长度加大,而且是fseek函数对此函数没有作用。

fseek()

重定位流(数据流/文件)上的文件内部位置指针   

注意:不是定位文件指针,文件指针指向文件/流。位置指针指向文件内部的字节位置,随着文件的读取会移动,文件指针如果不重新赋值将不会改变指向别的文件。

 int fseek(FILE *stream, long offset, int fromwhere);

函数设置文件指针stream的位置。

如果执行成功,stream将指向以fromwhere(偏移起始位置:文件头0,当前位置1,文件尾2)为基准,偏移offset(指针偏移量)个字节的位置。如

果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置。

成功,返回0,否则返回其他值。   

fseek position the file(文件)

position(位置)

pointer(指针)

for the file referenced by stream to the byte location calculated by offset.

第一个参数stream为文件指针   

第二个参数offset为偏移量,正数表示正向偏移,负数表示负向偏移   

第三个参数origin设定从文件的哪里开始偏移,可能取值为:SEEK_CUR、 SEEK_END 或 SEEK_SET  

SEEK_SET: 文件开头   

SEEK_CUR: 当前位置   

SEEK_END: 文件结尾   

其中SEEK_SET,SEEK_CUR和SEEK_END依次为0,1和2.

rewind   

功 能: 将文件内部的位置指针重新指向一个流(数据流/文件)的开头

函数名

  : ftell

功 能

  : 返回当前文件指针

函数原型

  : long ftell(FILE *stream);

函数功能

  :函数 ftell() 用于得到文件位置指针当前位置相对于文件首的偏移字节数。在随机方式存取文件时,由于文件位置频繁的前后移动,程序不容易确定文件的当前位置。调用函数ftell()就能非常容易地确定文件的当前位置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: