В code blocks работает, а в C++ builder нет [требует правки]

336
27 января 2017, 06:42
#include<iostream>
#include<windows.h> // для system("cls");
using namespace std;
struct librariesCatalog
{
    char author[64];
    char name[64];
    int date;
    char group[64];
};
void showData(const librariesCatalog Obj[], int amount);
int main()
{
    setlocale(LC_ALL, "rus");
    const int amountOfBooks = 1;
    librariesCatalog Book[amountOfBooks] = {};//на эту часть реагирует С++ Builder
    for (int i = 0; i < amountOfBooks; i++)
    {
        cout << "Books author: ";
        cin.getline(Book[i].author, 32);
        cout << "Name: ";
        cin.getline(Book[i].name, 32);
        cout << "Year of publication: ";
        cin >> Book[i].date;
        cin.ignore();
        cout << "Group: (f - Fiction, e - educational literature , r - further reading)";
        cin.getline(Book[i].group, 32);
        cout << endl;
    }
    showData(Book, amountOfBooks);
    return 0;
}
void showData(const librariesCatalog Obj[], int amount)
{
    system("cls");
    cout << "№\t" << "Books author\t" << "Name\t" << "\tYear of publication\t" << "\tGroup\t"  << endl;
    cout << "=============================================================================" << endl;
    for (int i = 0; i < amount; i++)
    {
        cout << i + 1 << '\t' << Obj[i].author << '\t'<< Obj[i].name<< '\t'<< '\t'
            << Obj[i].date << '\t' << '\t' <<'\t' << Obj[i].group << endl;
    }
}

Текст ошибки:

[C++ Error] Unit1.cpp(24): E2264 Expression expected

Answer 1

Похоже, что C++ Builder не допускает инициализацию с пустыми фигурными скобками.

Поэтому попробуйте инициализировать массив следующим образом

librariesCatalog Book[amountOfBooks] = { { '\0' } };
READ ALSO
DrvFR.dll как подключить данную библиотеку в программу на С++ и использовать метод Beep?

DrvFR.dll как подключить данную библиотеку в программу на С++ и использовать метод Beep?

Как работать с драйвером устройства Штрих-М ФР(Фискальный регистратор), программно? Ни кто не сталкивался? Не понимаю как использовать данную...

443
Как передать mutex классу? C++11

Как передать mutex классу? C++11

Можно ли сделать лучше?

284
Сортировка структуры точек с помощью sort

Сортировка структуры точек с помощью sort

У меня есть структура точки:

316
Рекурсия вызваная из базового класса

Рекурсия вызваная из базового класса

Все мы знаем обычную рекурсию, например:

324