我試圖逐個字符地讀取文件,將字符存儲在變量中,檢查它是否爲特定值並繼續讀取整個文件。從文件讀取並檢查單個字符
這是迄今爲止我已經得到的代碼:
我想要的變量i遞增,如果字符是A(49 ASCII值),但該程序打印如下:0000000000.
我試圖逐個字符地讀取文件,將字符存儲在變量中,檢查它是否爲特定值並繼續讀取整個文件。從文件讀取並檢查單個字符
這是迄今爲止我已經得到的代碼:
我想要的變量i遞增,如果字符是A(49 ASCII值),但該程序打印如下:0000000000.
你需要初始化你的計數器變量i。
FILE * fp;
fp = fopen("doc.txt", "r");
int i = 0; /* switch x to i */
while (!feof(fp)) {
int fc = fgetc(fp);
if (fc == 49) {
i++;
}
}
printf("%d", i);
您的意思是int x = 0;或者int i = 0;?您需要將我初始化爲0或將我切換到x。 – mba12
對不起,我在打印語句中寫了錯誤的變量。我已更新帖子以包含正確的變量。它仍然輸出0000000000雖然這不是我想要的。 – Chrome123