急啊,各位帮帮我!关于读文件的小问题

gxh9314 2009-07-21 04:07:12
#include <stdio.h>
#include <string.h>
#define BUFFER_SIZE 100
#define DATA_LEN 20

void main( void )
{
FILE *mPtrfile;
int i;
char mBlockBuffer[BUFFER_SIZE]; //memory chunk
char inputBuffer[BUFFER_SIZE];
memset(inputBuffer, '\0',BUFFER_SIZE);

char * dataBlock = inputBuffer;

if( (mPtrfile= fopen("a.txt", "rb")) != NULL )
{
int ret = fread(mBlockBuffer, DATA_LEN, 1, mPtrfile);

for(i=0; i<DATA_LEN; i++)
printf( "mBlockBuffer[%d]: %c\n" , i, mBlockBuffer[i]);


memcpy(dataBlock, mBlockBuffer,DATA_LEN);

for(i=0; i<DATA_LEN; i++)
printf( "dataBlock[%d]: %c\n" , i, dataBlock+i);

fclose( mPtrfile );
}
else
printf( "File could not be opened\n" );
}

文件a.txt中的内容是:97654321abc
我的问题是为什么两次打印的内容不一样啊?
结果是:
mBlockBuffer[0]: 9
mBlockBuffer[1]: 7
mBlockBuffer[2]: 6
mBlockBuffer[3]: 5
mBlockBuffer[4]: 4
mBlockBuffer[5]: 3
mBlockBuffer[6]: 2
mBlockBuffer[7]: 1
mBlockBuffer[8]: a
mBlockBuffer[9]: b
mBlockBuffer[10]: c
mBlockBuffer[11]: ?
mBlockBuffer[12]: ?
mBlockBuffer[13]: ?
mBlockBuffer[14]: ?
mBlockBuffer[15]: ?
mBlockBuffer[16]: ?
mBlockBuffer[17]: ?
mBlockBuffer[18]: ?
mBlockBuffer[19]: ?
dataBlock[0]: ?
dataBlock[1]: ?
dataBlock[2]: ?
dataBlock[3]: ?
dataBlock[4]: ?
dataBlock[5]: ?
dataBlock[6]: ?
dataBlock[7]: ?
dataBlock[8]: ?
dataBlock[9]: ?
dataBlock[10]: ?
dataBlock[11]: ?
dataBlock[12]: ?
dataBlock[13]: ?
dataBlock[14]: ?
dataBlock[15]: ?
dataBlock[16]: ?
dataBlock[17]: ?
dataBlock[18]: ?
dataBlock[19]: ?
Press any key to continue
...全文
90 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
点墨 2009-08-05
  • 打赏
  • 举报
回复
呵呵,问了问题不过五分钟便自己解决了!
shefg_great 2009-08-05
  • 打赏
  • 举报
回复
printf( "dataBlock[%d]: %c\n" , i, *(dataBlock+i));
fice1989 2009-07-21
  • 打赏
  • 举报
回复
恭喜。。。小错误多吸取经验。。。
winingsky 2009-07-21
  • 打赏
  • 举报
回复
up
clhposs 2009-07-21
  • 打赏
  • 举报
回复
*(dataBlock+i)
gxh9314 2009-07-21
  • 打赏
  • 举报
回复
问题已经解决。
printf( "dataBlock[%d]: %c\n" , i, dataBlock+i);
改为
printf( "dataBlock[%d]: %c\n" , i, *dataBlock+i));
gxh9314 2009-07-21
  • 打赏
  • 举报
回复
自己顶起来

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧