Вывод структуры в файл [закрыт]

118
07 августа 2019, 14:10

код:

  std::cout << "enter file to write\n> ";
  std::string filename;
  std::cin >> filename;
  std::ofstream myfile(filename, std::ofstream::app | std::ofstream::binary);
  if (myfile){
    std::streamsize size = sizeof(city);
    myfile.write(temp, size);
    std::cout << "SAVED!\n";
  }
  myfile.close();

поля структуры city:

struct city
{
    char name[32];
    int citizens;
    float territory;
    int startyear;
    int schools;
};

ошибка:

test.cpp: In function ‘int main()’:
test.cpp:61:36: error: no matching function for call to ‘std::basic_ofstream<char>::write(city&, std::streamsize&)’
             myfile.write(temp, size);
                                    ^
In file included from /usr/include/c++/7/ostream:693:0,
                 from /usr/include/c++/7/iostream:39,
                 from test.cpp:2:
/usr/include/c++/7/bits/ostream.tcc:182:5: note: candidate: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::write(const _CharT*, std::streamsize) [with _CharT = char; _Traits = std::char_traits<char>; std::streamsize = long int]
     basic_ostream<_CharT, _Traits>::
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/ostream.tcc:182:5: note:   no known conversion for argument 1 from ‘city’ to ‘const char*’
Answer 1

В данном случае важны не поля структуры, а что вы передаете. Подозреваю, что tmp - не адрес объекта city, а ссылка на него.

В то время как функция ожидает указателя на char.

READ ALSO
Нужно поменять тип линии в JFreeChart

Нужно поменять тип линии в JFreeChart

Здравствуйте появилась проблема с поиском в документации информации :( А именно то, что я не нашел как поменять тип линии, ее цвет и как добавить...

110
Добавить прокси к моему приложению на Android

Добавить прокси к моему приложению на Android

Я хочу узнать как правильно добавить прокси к моему приложениюТак получилось, что сайт, который я парсю попал в реестр РКН, мне нужен способ...

127
Постоянно соединение с сайтом

Постоянно соединение с сайтом

Допустим есть некий сайт, с которого я скачиваю много картинокПример сайта:

114
Диалоговые окна. Как получить данные от дочернего окна?

Диалоговые окна. Как получить данные от дочернего окна?

Можно ли создать создать в JavaFx диалоговое окно что бы при вызове метода showDialog() он возвращал не которые парамеры, как это происходит в Alert и он возвращает...

133