我有以下样本数据文件标题为" data.txt":
a<tab>b<tab>c<newline>
a<tab>b<tab>c<newline>
和以下代码:
#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
#include <cstdlib>
using namespace std;
int main()
{
char a,b,c;
FILE* fin = fopen("data.txt","r");
fscanf(fin,"%c %c %c",&a,&b,&c);
cout<<a<<" "<<b<<" "<<c<<endl;
fscanf(fin,"%c %c %c",&a,&b,&c);
cout<<a<<" "<<b<<" "<<c<<endl;
fclose(fin);
return 0;
}
编译运行时,其输出如下:
a b c
a b
我希望看到:
a b c
a b c
出了什么问题?
答案 0 :(得分:1)
你没有在第三个和第四个字符读取之间跳过空格 - 你需要一个格式字符串中的另一个空格。
(为什么{+ 1}}在C ++中呢?)