[問題] fscanf的問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
codeblock
問題(Question):
小妹照螞蟻本給的範例嘗試fscanf的範例,但是卻出現了error
餵入的資料(Input):
Board.txt的內容
Board
None DRSH None None
DRTH LSSH LSSS None
DSSH None LRTS None
DSTH DRSS LRSS None
Select
LRSH
Free
LRTH
LRSH
LSTS
LSTH
DRTS
DSTS
DSSS
預期的正確結果(Expected Output):
print出 Board None DRSH None.....DSSS
也就是把所有的string 印出來
錯誤結果(Wrong Output):
"0x77c14609"指令參考的 "0x00000000"記憶體.該記憶體不能為"written".
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <stdio.h>
char board[32];
int main()
{
FILE *cfPtr;
if ((cfPtr=fopen("Board.txt","r"))==NULL){
printf("file could not opened\n");//Board.txt 無法開啟
}
else{
fscanf(cfPtr,"%s",board);
while(!feof(cfPtr)){
printf("%s\n",board);
fscanf(cfPtr,"%s",board);
}
fclose(cfPtr);
}
system ("pause");
return 0;
}
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.44.104
→
05/17 18:02, , 1F
05/17 18:02, 1F
→
05/17 18:03, , 2F
05/17 18:03, 2F
ok了,我犯了愚蠢的錯誤QQ
→
05/17 18:19, , 3F
05/17 18:19, 3F
→
05/17 18:20, , 4F
05/17 18:20, 4F
scanf我會拉>"<,板主別生氣
再問一個問題,如果我想把每次讀到的string
裡的每個字母,拆開存到一個struct要用什麼函式???
例如:
struct matrix {
char aaa;
char bbb;
char ccc;
char ddd;
};
現在我想把讀到的string -> "LRTH",分別把L存到aaa,R存到bbb,T存到ccc,H存到ddd
我在想是不是在 fscanf(cfPtr,"%s",board); 之後
對board再用一個涵式把存在裡面的string一個一個抓出來存到struct裡去?
想請問這個函式是什麼?
或是有更快的方法嗎!!!
※ 編輯: gigi1009 來自: 59.126.44.104 (05/17 20:05)
推
05/17 21:41, , 5F
05/17 21:41, 5F
推
05/17 22:04, , 6F
05/17 22:04, 6F
→
05/18 10:42, , 7F
05/18 10:42, 7F
→
05/18 17:55, , 8F
05/18 17:55, 8F
→
05/19 00:50, , 9F
05/19 00:50, 9F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章