1
CODE: -關於的fscanf空白查詢()
while (fscanf (fp,"%s %d %f", e.name, &e.age, &e.bs) !=EOF)
{
printf ("%s %d %f\n", e.name, e.age, e.bs) ;
}
說我有一個文件下面的句子: -
FNAME LNAME 20 200000
fname1 lname1 30 50000
期望的輸出是: -
fname lname 20 200000.0000
fname1 lname1 30 50000.0000
但我得到的輸出是: -
fname (garbage value) (garbage value)
lname 20 200000.0000
fname1 20 200000.0000
lname1 30 50000.0000
上述問題是由於這樣的事實:%s
不讀白的空間,因此它被分裂我fname lname
分爲兩個部分。
是否有解決方案來獲得所需的輸出?
爲什麼你做了'== 4' –
'fscanf'返回找到的匹配數量。它將匹配4件事情。更少,它在中間失敗。 – StilesCrisis
所以'!-EOF'也在我的情況下工作 –