我需要使用fscanf
來忽略所有空格並且不保留它。 我試圖使用(*)
和[^\n]
之間的組合作爲:fscanf(file," %*[^\n]s",);
當然,它墜毀,有沒有辦法只與fscanf
?如何忽略fscanf中的空格()
代碼:
int funct(char* name)
{
FILE* file = OpenFileToRead(name);
int count=0;
while(!feof(file))
{
fscanf(file," %[^\n]s");
count++;
}
fclose(file);
return count;
}
解決了! 將原來的fscanf()
更改爲: fscanf(file," %*[^\n]s")
; 完全按照fgets()
的順序讀取所有行,但沒有保留!
我們可以看到崩潰的代碼嗎?我們無法解決我們看不到的問題。 –
int funct(char* name) { \t FILE* file = OpenFileToRead(name); \t int count=0; \t while(!feof(file)) \t { \t \t fscanf(file," %[^\n]s"); \t \t count++; \t } \t fclose(file); \t return count; }
– synt