亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

c語言fread()返回總是0?

c語言fread()返回總是0?

SSM
紅糖糍粑 2019-02-19 19:15:47
Uint16 BlockWrFlash[256]={0};fptr = fopen("codec.bin", "rb"); //加載數據ReturnLenth=256;kk=0;while(ReturnLenth==256) //加載代碼{ReturnLenth=fread(BlockWrFlash,sizeof(short),256,fptr);DeviceAddr=kk*0x100;FlashWr(DeviceAddr);delay();kk++;}現在的問題出現在fread返回總是0,正常的是256才對,不知道哪里有問題了,請大大們指教!謝謝!
查看完整描述

3 回答

?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

你沒有檢查fopen不成功的情況,即

fptr = fopen("codec.bin", "rb"); //加載數據

后加
if(fptr ==NULL)
{
printf("file can't open!\n");
return ;
}
可能是打開文件錯誤造成的。



查看完整回答
反對 回復 2019-03-26
?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

"codec.bin"的路徑關系對么?默認走當前路徑,但是根據編譯環境,可能會有不同路徑效果。嘗試一下用絕對路徑。

fseek設置一下讀寫位置到文件頭。

如果還不行,你就把打開方式變成可讀寫的二進制,然后一次讀一個字節。

查看完整回答
反對 回復 2019-03-26
  • 3 回答
  • 0 關注
  • 1445 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號