找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3010|回复: 0
打印 上一主题 下一主题
收起左侧

文件操作之fgetc()应用--将硬盘数据读入内存-C语言教程

[复制链接]
跳转到指定楼层
楼主
ID:99624 发表于 2015-12-20 02:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//////----本例程是将硬盘数据读入内存,再将读出的数据在屏幕显示出来--------/////////////////////////////
#include"stdio.h"

#include"stdlib.h"
void main()

{
  char val;
  FILE *fp;//FILE(大写!)是系统定义的结构体全局变量,里面包含文件指针位置,文件类型,文件大小等等信息
// fp=fopen("d:\\Program Files (x86)\\test.txt","rt");
   fp=fopen("./test.txt","rt");//这是默认当前路径下打开“"./test.txt"”
  //当成功打开指定的文件对象后,文件内部位置指针就指向文件开始处(文件位置指针“0”处)
  if(fp==NULL)//如果打开文件不成功,则输出(void *)0即NULL,
  {
     printf("文件打开失败!\n");
     exit(1);//离开本程序
// return ;//return(没有返回值!只是return)和return 0的区别是什么?
  }
  else
  {
     printf("文件打开成功!\n");

      val=fgetc(fp);//从指定的文件fp一次读取一个字符,若读取成功返回值就是读取到的字符,字符=fgetc(文件指针);
      printf("文件内容是:\n");
      //   '\0 '是字符串结束标志,“EOF”是文件结束标志。
while(EOF != val) //若文件读取到最后一个字符,则返回“EOF”(注意是大写);
{
           putchar(val);//该函数是将读取到的字符打印在显示屏
val=fgetc(fp);


}
     printf("\n\n");//换行
     if(NULL==fclose(fp))//文件若关闭成功则fclose()函数返回0
     printf("文件关闭成功!\n");
  }

}



/*
1,文件内部有个位置指针,指向文件当前的读写字节,在文件被成功打开时,该指针总是指向文件的第一个字节;
通过这个位置指针,就能找到存储介质上的当前数据;
2,文件指针和文件内部位置指针不一样!文件指针是系统定义的结构体全局变量,指向整个文件;文件指针在程序中定义
只要不对其重新赋值,文件指针的值就不变!而文件内部的指针是随着读写进程变化的,默认情况下文件内部指针是从文件的第一个字节处逐个向下平移。
3,对于文件的读写操作,是以内存为参照物的,即以内存为中心操作。
4,文件操作结束后必须关闭文件,将文件指针所指向的空间释放。
*/
程序效果图:



     有关文件的操作是C语言中最后的一章。嵌入式系统开发当中会经常面临大量文件的操作,所以学好C语言文件部分内容非常重要!虽然嵌入式系统的文件系统中有关函数可能有所差异,但是只要学会C语言文件主要函数就能很快上手ff0.9文件系统。


-


-----GKXW----2015年11月19日15:47:35






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表