还是文件读取的问题,欢迎大家进来看看!!!!!

liushan 2002-07-03 09:50:10
现有一名为:mysin.dat数据文件,里面有三行十六进制数据:0x41 0x44 0x45

想通过编码来实现对文件的读取,获得三个十进制数据。

前面的代码我已写: FILE *fp;
if((fp=fopen("mysin.dat","rb))==NULL)
{
printf("fail!\n");
exit(0);
}
int a[3];
下面该怎么写来使a[0],a[1],a[2]分别得到该文件里面的三个十六进制数据。 谢谢!
...全文
38 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
liushan 2002-07-04
  • 打赏
  • 举报
回复
衷心谢谢上面各位地悉心指点, 分虽不多,但也能表达我的心意!!
shilong 2002-07-03
  • 打赏
  • 举报
回复
FILE *fp;
if((fp=fopen("mysin.dat","rb))==NULL)
{
printf("fail!\n");
exit(0);
}
int a[3],i;
char string[255],*stopstring;
for (i=0;i<3;i++)
{
gets(string,255,fp);
a[i] = strtol( string, &stopstring, 16 );
}
fclose(fp);
liushan 2002-07-03
  • 打赏
  • 举报
回复
upup
liushan 2002-07-03
  • 打赏
  • 举报
回复
怎样将字符转化为数值呀

我只知道将字符串转化为数值:atol() strtol() 等等

upup
douwei18 2002-07-03
  • 打赏
  • 举报
回复
up
liushan 2002-07-03
  • 打赏
  • 举报
回复
好的,我来试试!!!
tigerfox 2002-07-03
  • 打赏
  • 举报
回复
此时读出的数据是字符,不是数字当然不对了.

你要做的是字符转换成数字
tigerfox 2002-07-03
  • 打赏
  • 举报
回复
此时读出的数据的字符,不是数字当然不对了.

你要做的是字符转换成数字
liushan 2002-07-03
  • 打赏
  • 举报
回复
up
liushan 2002-07-03
  • 打赏
  • 举报
回复
up
liushan 2002-07-03
  • 打赏
  • 举报
回复
好像不行!

其实问题的关键是是用什么函数来进行读取,总不会用fgetc() 或fgets()吧?
用fread()的出来的结果不对。 请支招!
diib 2002-07-03
  • 打赏
  • 举报
回复
下了,明天来看
diib 2002-07-03
  • 打赏
  • 举报
回复
错了,把"."改成"->"因为是指针
diib 2002-07-03
  • 打赏
  • 举报
回复
int size = sizeof(int)
for(i=0;i<3;i++)
{
fp.Seek(i*size,CFile::begin);
fp.Read(a[i],size);
}

前提是你用类似的方法把这3个数写进去!!
liushan 2002-07-03
  • 打赏
  • 举报
回复
怎么没有人回答呀,一定给分的!

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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