1

「タイトル」と「著者」を入力している行でエラーが発生します。これを修正するために何をすべきかよくわかりません。

struct bookStruct
 {
    char title[40];
    char author[40];
    int pages;
    int year;
  };

  enum menu { display=1, add, end} ;

  void displayOptions();
  void displayBooks();


int main(){

    vector<bookStruct> book(11);
    string option;

    book[0].title = "a";
    book[0].author = "b";
    book[0].pages = 23;
    book[0].year = 21;

    displayOptions();
    cin >> option;

    displayBooks(book);

    return 0;
}
4

1 に答える 1

4

配列に割り当てることはできません。配列にコピーする必要があります。

std::strcpy(book[0].title, "a");

ただし、C++ を使用しているためstd::string、文字配列の代わりに使用することをお勧めします。

struct bookStruct
{
    std::string title;
    std::string author;
    int pages;
    int year;
};

次に、今しようとしているように、通常の割り当てを使用できます。

于 2013-04-04T10:45:58.800 に答える