我正在嘗試使用C來搜索文本文件,以查找始終位於特定位置的字符串。具體而言,我正在尋找三個連續的破折號。當它找到三條破折號時,它應該返回找到它的那一行。然後它應該繼續到下一行並繼續搜索三個連續的破折號,直到它到達文件的末尾。每次都應該打印行號。在文本文件中查找字符串C
這是我到目前爲止有:
int main() {
FILE *f;
char inName[80];
printf("Read text from: ");
scanf(" %79[^\n]s\n", inName);
f = fopen(inName, "r");
if (f == 0) printf("ERROR: Cannot open file %s for reading.\n", inName);
int lineNumber = 0;
for(;;) {
char line[127];
fgets(line, 127, f);
if (!feof(f)) {
lineNumber++;
} else {
break;
}
double lf;
int d, d1;
char s[30];
char s1[4];
sscanf(line, " %d, %s, %s, %s, %s, %d, %d, %lf",
&d, &s, &s, &s, &s, &d, &s1, &lf);
if (s1 == "---") {
printf("%d\n", lineNumber); // what line
}
}
fclose(f);
return(0);
}
此代碼運行,但不會顯示任何信息。任何人都可以展示如何完成這項工作?謝謝:)
你試過調試器嗎? – 2013-04-24 19:21:05