设为首页 加入收藏

TOP

C++学习笔记:文件和注册表操作
2014-11-16 10:40:24 】 浏览:7164
Tags:学习 笔记 文件 注册表 操作

  很多与文件操作相关的函数其参数类型都是const char*,本章首先介绍指向常量的指针const char*和指针常量char *const这两种类型的区别。


  12.1char const * 和char * const


  1 char const * p;


  2 const char * p;


  3 char * const p;


  这三个有什么不同?const char * p;和char const * p;在实现上都是一样的,定义一个指向常量的指针,由于指针指向的是一个常量,常量的值不能改变,但是可以改变指针的指向。char * const p;这是一个指针常量,也就是指针的指向不能改变,但是可以改变指针指向的值。区别指针常量和常量指针的关键看const 和* 的位置。


  12.2C语言对文件操作的支持


  C语言中,对文件的操作是利用FILE结构体实现的。


  12.2.1文件的打开


  MSDN中有一个fopen函数:


  1 FILE *fopen( const char *filename, const char *mode );


  其中的第一个参数是要打开的文件名称,第二个参数是打开的模式。MSDN中对打开文件的模式进行了如下的定义:



  打开一个文件的实例代码如下:


  FILE *pFile=fopen(”1.txt”,”w”);//该操作返回一个FILE类型的指针


  12.2.2文件的写入


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


  文件写入有四个参数,分别表示:要写入的数据,以字节为单位的项的大小,写入项的最大数目,指向FILE类型的指针,该参数可以由fopen函数获取到,也就是fopen函数的返回值。写入文件的实例代码如下:


  1 fwrite("new buffer",1,strlen("new buffer"),pFile);


  由于C语言对文件操作采用缓存文件系统,从内存从磁盘写入的文件首先会被放到内存缓冲区中,只有当内存缓冲区满了或者当写入操作的文件关闭之 后,才把要写入的数据存的磁盘文件上。如果要在执行写操作之后立即将数据存放到磁盘文件上,可以先调用fflush函数刷新缓冲区或者调用fclose函 数将打开的文件关闭。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C++学习笔记:对话框2 下一篇C++学习笔记:绘图控制

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目