[問題] 讀取txt的文章最後一個字元會多印?
晚安:D
小弟還是初學者,
有一些問題想請教一下前輩們,
我的txt檔裡面是一篇文章,
我讓它輸出變成直式,
假設txt內容是I love you.,
印出來是
I
love
you.
但是當我讀檔印出來時最後一個字元會重複印一次,
變成
I
love
you.
you.
這是我的語法
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
FILE *fptr;
char str1[16];
fptr=fopen("c:\\Dev-Cpp\\yang.txt","r");
if(fptr!=NULL)
{
do
{
fscanf(fptr,"%s",&str1);
printf("%s\n",str1);
}
while(!feof(fptr));
fclose(fptr);
}
else
printf("檔案開始失敗\n");
system("pause");
return 0;
}
我原本以為是feof的問題,
所以我把while(!feof(fptr));改成
int i;
while((i =fgetc(fptr))!= EOF);
可是還是會重複印,
所以上來請教各位小弟的問題出在哪裡?
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.4.199
推
05/15 01:07, , 1F
05/15 01:07, 1F
→
05/15 01:09, , 2F
05/15 01:09, 2F
推
05/15 01:13, , 3F
05/15 01:13, 3F
→
05/15 01:21, , 4F
05/15 01:21, 4F
→
05/15 10:06, , 5F
05/15 10:06, 5F
→
05/15 20:58, , 6F
05/15 20:58, 6F
→
05/15 20:59, , 7F
05/15 20:59, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章