Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Запись и чтение бинарных файлов. Программа крашится при закрытии консольного окна - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подскажите пример подключения lib http://www.cyberforum.ru/cpp-beginners/thread1252627.html
Добрый вечер. Можно пример какой-нибудь простенькой программы (например сложение чисел, или вычисление площади треугольника), в которой main.cpp отвечает за ввод и вывод, а в dop.lib реализуется сам...
C++ Перегрузить operator* Подскажите, пожалуйста, как использовать operator* в void main в данной программе по аналогии с operator-> Не разобрался полностью в синтаксисе. #include <iostream> using namespace std; ... http://www.cyberforum.ru/cpp-beginners/thread1252616.html
C++ Вернуть текстовое представление уравнения в виде строки
последний пункт задания лабы: Вернуть текстовое представление уравнения в виде строки (char или wchar_t). уравнение такое (x^2+y^2-4a^2)^3=108a^4y^2
Программа не записывает данные в файл C++
Программа не записывает данные в файл помогите исправить #include<iostream> #include <stdio.h> #include <stdlib.h> #include<iomanip> #include<windows.h> using namespace std; struct stud {
C++ Объясните как работает программа, которая заменяет 2 и больше подряд идущих пробела на один http://www.cyberforum.ru/cpp-beginners/thread1252598.html
Всем доброго времени суток, друзья. Прошу обьяснить мне как работает данная программа, потому как сам не могу додуматься. #include <stdio.h> main () { int c, p; p = 0; ...
C++ Определить, есть ли в строке St изображения нечетных чисел Определить, есть ли в строке St изображения нечетных чисел. подробнее

Показать сообщение отдельно
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.09.2014, 17:27
Вот это неправильно:
C++
1
fout.write((char *)&cstr, sizeof(cstr));
sizeof() выдаст размер указателя, а не размер массива.
Вижу, что нашли правильный вариант.

Добавлено через 3 минуты
Цитата Сообщение от trev Посмотреть сообщение
То есть с записью в файл я, кажется, разобрался :
Не вижу записи в файл длины строки.

Добавлено через 4 минуты
Вот это неправильно:
C++
1
2
char *cstr = new char[name.length() + 1];
fin.read((char *)&cstr, name.size()); // !!! просто cstr
Сначала нужно прочитать из файла длину строки (сначала, естественно, записать её туда). Потом создать массив нужного размера, потом прочитать туда саму строку. И не нужно брать адрес у указателя - &cstr, просто cstr (это и так адрес).
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru