社区
C语言
帖子详情
C语言fopen打开文件问题(莫名其妙的问题)
amwbai8700
2015-03-02 09:19:45
VS2012,C语言用fopen函数打开文件时候文件指针的值是这样的:
msvcr110d.dll!0x101444c8 {_ptr=0x00000000 <NULL> _cnt=0 _base=0x00000000 <NULL> ...}
整个程序运行不会有问题,也不会提示错误,但是其实读到的每个值都是非常小的接近零的值。
后来把程序复制到另外一个电脑上,VS2010,打开同样的文件,没有问题!
到底是怎么回事啊!又被C语言这种莫名其妙的问题弄疯了。
...全文
446
7
打赏
收藏
C语言fopen打开文件问题(莫名其妙的问题)
VS2012,C语言用fopen函数打开文件时候文件指针的值是这样的: msvcr110d.dll!0x101444c8 {_ptr=0x00000000 _cnt=0 _base=0x00000000 ...} 整个程序运行不会有问题,也不会提示错误,但是其实读到的每个值都是非常小的接近零的值。 后来把程序复制到另外一个电脑上,VS2010,打开同样的文件,没有问题! 到底是怎么回事啊!又被C语言这种莫名其妙的问题弄疯了。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ForestDB
2015-03-04
打赏
举报
回复
我猜是不是要E:\\file
layershow
2015-03-04
打赏
举报
回复
1
是你理解错了,一点也不莫名其妙 FILE * 本身不是 NULL,其指向的结构体中某字段可以是 NULL,因为你还没使用它呢
赵4老师
2015-03-03
打赏
举报
回复
楼主研究FILE结构体的成员的值有何意义? 用fread,fwrite,fseek,ftell这些函数通过指向FILE结构体的指针能操作文件不够用?
推荐使用WinHex软件查看硬盘或文件或内存中的原始字节内容。 不要把 fopen("...","...");fscanf,fprintf,fgets,fgetc,fclose //读时把\r\n替换成\n,写时把\n替换成\r\n;读到\x1a就设置EOF;读写的内容当字符看待 和 fopen("...","...b");fseek,fread,fwrite,fgetc,fclose //不作以上替换,遇到\x1a仍继续读;读写的内容当字节看待 弄混了
707wk
2015-03-03
打赏
举报
回复
看了楼上一堆人的回答还是没懂lz你想问啥
圣地亚哥老亚瑟在北极送外卖
2015-03-03
打赏
举报
回复
不明白你在问什么问题的飘过
Isnis-fallen
2015-03-03
打赏
举报
回复
文件指针的值不是有吗 有什么问题?
ztenv
2015-03-03
打赏
举报
回复
楼主去学一下C语言下FILE结构的声明吧,网上搜一搜也可以找到相关的资料;建议了解一下即可。
《
C语言
深度解析》第9、10章——位操作 /c标准IO、网络编程/线程/链表
本课程主要讲解以下内容:1. 位操作(位运算)2.
c语言
的标准IO函数3.标准IO与文件IO、常见标准IO函数有哪些、
fopen
/fclose)、标准io输出函数、标准io输入函数等4.多线程、网络编程、数据库、数据结构、顺序表、链表、单链表、双链表、队列/栈、Linux内核链表
文件操作
文件操作常函数
fopen
函数 函数原型为:FILE *
fopen
(const char *filename,const char *mode);
fopen
(文件路径,文件使用方法);
fopen
函数打开打开filename指定文件,返回一个指向FILE类型指针,无论使用哪种方式,当
打开文件
时出现了错误,
fopen
函数都将会返回NULL 常见的使用方式: “r” —以只读的方式
打开文件
(该文件必须存在,不存在就会出错) “w” —以只写的方式
打开文件
(若文件存在则长度清零,即文件内容会消
C语言
总结项目和入门——文件操作
文章目录七、
C语言
入门——文件操作文件操作1. 文件打开:
fopen
函数2.文件关闭:fclose3.文件读取 七、
C语言
入门——文件操作 我们前面的所有程序都是暂时的,把程序一关,什么都不会留下来,打开又是从头再来,当我们希望能保留一下处理的数据,或者对现存在的数据进行处理,我们就需要文件操作了。 我们主要讨论如何对数据文件进行操作。 像什么文本文件,都是存储在磁盘上的,这些数据掉电不丢失,我们把程序处理的数据放在这里,就能实现长期保留了。 文件分成2类:ASCII文件和二进制文件。
c++_2_windows下
C语言
读写文件时
莫名其妙
增加的"0x0D"字符
一.前提windows下文件操作分为两种:文本文件模式和二进制模式。1. 文本文件模式下,windows和linux有些许不同,如换行符的表示,windows下为0x0D0x0A两个字节。以文本模式读取文件,会将"0x0D0x0A"双字节转为"0x0A"单字节存储在内存中;以文本模式写文件时,会在每一个"0x0A"前面自动添加一个"0x0D"字节并保存在文件中。2.二进制模式下,并没有换行符的出现...
C语言
课设心得之Visual studio文件读写操作
很多同学做
C语言
课设的时候,在文件读写的方面遇到了困难,这个
问题
很多同学问过我。我收集了普遍遇到的
问题
,在这里我出一期教程,给大家答疑解惑!
C语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章