2010-04-29 63 views

回答

0

假設輸入文件是可搜索(而不是,例如,管道或網絡流),你可以這樣做:

fgetpos(tracefile, &position_before); 
fscanf(tracefile, "%s ", opcode); 
if (need_to_rescan) { fsetpos(tracefile, position_before); } 

備份和重新掃描可能是非常低效的(以及問題不支持來自管道的輸入等),所以你可能要考慮是否有其他選擇。

3

我幾乎從不直接使用fscanf,因爲知道文件指針在錯誤狀態下的位置是一種痛苦。

我使用fgets來拉一行,然後我可以使用sscanf來記錄我心中的內容,而不必返回到文件重新讀取。

+0

+1,我會這樣做,而不是重讀。 – 2010-04-29 14:06:49

相關問題