這是我第一次在這裏問一個問題,所以我會盡我所能。我在C方面並不是很棒,我只是在中級C編程。搜索和閱讀文本文件
我想寫一個程序,讀取一個文件,我工作。但是我要搜索一個單詞,然後將單詞保存到數組中。我現在要去的是
for(x=0;x<=256;x++){
fscanf(file,"input %s",insouts[x][0]);
}
在文件中有一些行說「input A0;」我希望它能將「A0」保存到insouts [x] [0]。 256只是我挑選的一個數字,因爲我不知道它可能在文本文件中有多少輸入。
我insouts聲明:
char * insouts[256][2];
什麼問題?什麼不行? –
它不會將「A0」保存到數組中,或者至少這是我在嘗試打印出來時得到的結果。我只是給出了一堆奇怪的字符 – TylerM
檢查'fscanf()'的返回值。對於你的格式,它會在成功時返回1,否則返回0或-1。數據必須包含交替的「輸入」和「值」(值可以改變拼寫,但輸入不能)。它們之間必須有空格。我會在格式化字符串的開頭放一個空格來跳過前導空格('「input%s」')。如果你的數據沒有這樣格式化,你可能需要使用'fgets()'然後''sscanf()'來代替'fscanf()'。我希望'fscanf()'更容易使用,因此更容易教授;這是一個雷區滿或新手陷阱。 –