使用数组和"结构"编译错误?

Compiling Errors with Arrays and 'struct'?

本文关键字:编译 错误 结构 数组      更新时间:2023-10-16

我的第一堂编程课(第一堂编程课)即将结束,我需要代码方面的帮助,因为我得到了不清楚的编译错误。

首先,我尝试加载的数组给我带来了问题。

string stu[15];
stu[0]= Billy;
stu[1]= Bobby;
stu[2]= Bailee;
stu[3]= Barney;
stu[4]= Bambi;
stu[5]= Barbie;
stu[6]= Barrie;
stu[7]= Barry;
stu[8]= Benny;
stu[9]= Barkley;
stu[10]= Bennie;
stu[11]= Bonnie;
stu[12]= Bernie;
stu[13]= Bertie;
stu[14]= George;

显然,它说每一个都是未申报的。但我认为这几乎是数组的重点?不把所有时间都花在声明变量上?

我的另一个问题是这段代码...

int name_count = 0;
while (name_count < 15) 
{ 
    inputFile >> (stu[0]); 
    if (!inputFile.good()) break; 
    ++name_count; 
}

我正在尝试将数据从.txt文件加载到数组中,我对如何执行此操作感到困惑。

所有代码一起:

#include <iostream>
#include <fstream>
#include <cmath>
#include <string>
using namespace std;
int main() {
    string inputFile;
    string stu[15];
    stu[0] = Billy;
    stu[1] = Bobby;
    stu[2] = Bailee;
    stu[3] = Barney;
    stu[4] = Bambi;
    stu[5] = Barbie;
    stu[6] = Barrie;
    stu[7] = Barry;
    stu[8] = Benny;
    stu[9] = Barkley;
    stu[10] = Bennie;
    stu[11] = Bonnie;
    stu[12] = Bernie;
    stu[13] = Bertie;
    stu[14] = George;
    ofstream(studentFile)("Students.txt");
    studentFile.open("Students.txt");
    studentFile << " STUDENT INFO HERE ";
    studentFile.close();
    int name_count = 0;
    while (name_count < 15) {
        inputFile >> (stu[0]);
        if (!inputFile.good())
            break;
        ++name_count;
    }
    system("pause");
    return 0;
}

我不断收到编译错误:

与"输入文件>> stu[0]"中的"运算符>>"不匹配

"

struct std::string"没有名为"好"的成员

很确定我在这里错过了一些东西...任何帮助都非常感谢。非常感谢。

与"输入文件>> stu[0]"中的"运算符>>"不匹配

不能将<<或>>与字符串一起使用。

inputFile 是 std::string 类型,没有任何成员函数 good()。您可能打算使用输入文件流 (ifstream)。

此外,请避免使用system()调用。

你忘了用""包裹你的字符串

"Bernie"

C++目前您尝试将结构分配给对象的东西BillyBobby等......

这是因为C++需要显式类型声明,编译器不会隐式知道Billy应该是字符串而不是对象。您需要使用 "Billy 来表示字符串类型。