正在为我的C++课程开发程序。我不确定我哪里出错了,或者我错过了什么。我在文本文件(座位.txt)中有一个数组,显示飞机的座位计划。我需要能够显示座位,但似乎只能显示文件的第一个字符。例如:
第 1 行
* * X * X X并且只显示"R"。如何显示整行?提前谢谢你。
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <string>
#include <ostream>
#include <fstream>
using namespace std;
int main()
{
char tclass, seat;
int row;
int choice;
int i;
string seating[13];
string line;
ifstream seatingPlan("seating.txt");
getline(seatingPlan, line);
i = 0;
while (getline(seatingPlan, line))
{
seating[i] = line[0];
i++;
}
for (int i = 0; i < 13; i++)
{
cout << seating[i] << "n";
}
system("pause");
return 0;
}
使用 line[0]
您只能访问字符串中的第一个字符。 line
是一个字符串,而不是一个字符串数组。请改用seating[i] = line;
。
你从行中取第一个符号:
seating[i] = line[0];
你应该采取整行:
seating[i] = line;