|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.12.2010, 16:54 | #1 |
Форумчанин
Регистрация: 30.07.2009
Сообщений: 105
|
Чтение из файла... ошибка
Здравствуйте. Есть такой код.
Код:
Последний раз редактировалось pobedin; 22.12.2010 в 17:13. |
22.12.2010, 17:06 | #2 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
ты файл на запись открыл и не закрыл а открываешь на чтение, возможно он не открывается даже а ты его читат ьпытаешся.
ЗЫ: ты знаешь что такое union? |
22.12.2010, 17:12 | #3 |
Форумчанин
Регистрация: 30.07.2009
Сообщений: 105
|
На запись все ок работает, но исправил, все равно ошибка остается той же. Может быть поток нельзя так явно выводить на экран.
А что не так с union? Последний раз редактировалось pobedin; 22.12.2010 в 17:16. |
22.12.2010, 17:25 | #4 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
проверь открывается ли файл вобще после fp = fopen ("file.txt", "r++");
надо под отладчиком посмотреть откуда ошибка. а union - он хранит данные в одних и тех же адресах памяти, тоесть в твоем случае при записи например pryamoug.a = 5; в pryamoug.b тоже будет 5. тебе наверно надо не union а struct |
22.12.2010, 17:39 | #5 |
Форумчанин
Регистрация: 30.07.2009
Сообщений: 105
|
я знаю, что он так хранит. мне по условию нужно выполнить именно через объединение. а в нем хранить данные 2 фигур: прямоугольника и круга, а на выбор считать их площадь и писать ее в файле. я не понимаю зачем здесь объединение, но не поспоришь. файл нормально открывается. ошибка если "cout<<rezult" делаю. может как по-другому можно считать данные из txt?!
Последний раз редактировалось pobedin; 22.12.2010 в 17:44. |
22.12.2010, 17:48 | #6 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
Код:
cout<<"A= "; cin>>pryamoug.a; cout<<"B= "; cin>>pryamoug.b; допустим юзер ввел A=5, B=7 так вот после отработки этого кода у тебя будет pryamoug.a == 7 pryamoug.b == 7 Последний раз редактировалось UltimaBeaR; 22.12.2010 в 17:52. |
22.12.2010, 17:56 | #7 |
Форумчанин
Регистрация: 30.07.2009
Сообщений: 105
|
все заработало. только я не понял, что изменилось кроме проверки условия? о_О
з.ы. понял ошибку. спасибо. исправлю. а что мне даст 2 структуры в юнионе в сравнении с просто 2-мя структурами? Последний раз редактировалось pobedin; 22.12.2010 в 18:06. |
22.12.2010, 18:18 | #8 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
должно не заработать а вылезти должно сообщение об ошибке открытия файла, если дело в этом. у тебя данные одной фигуры не должны быть в 1ом и томже адресе памяти, память должна делится между данными 2х типов фигур, а у тебя память делится между 4мя переменными.
тебе чтото типо этого надо Код:
circle.figuresData.circleRadius circle.calcucatedSquare rectangle.figuresData.rectangle.wid th rectangle.figuresData.rectangle.hei ght rectangle.calcucatedSquare |
22.12.2010, 19:31 | #9 |
Форумчанин
Регистрация: 30.07.2009
Сообщений: 105
|
должно вылезть сообщение, но вместо этого информация из текстового файла выводится на экран :
не понял причины, но спасибо за помощь |
22.12.2010, 20:35 | #10 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 199
|
Ну значит ты чтото сам исправил еще где-то и не заметил)))
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Чтение из файла С++ | Michahodrev | Помощь студентам | 2 | 18.12.2010 23:47 |
Чтение из файла | virtuhay266 | Помощь студентам | 0 | 27.11.2010 23:27 |
чтение из файла | dedokk1234 | Общие вопросы C/C++ | 0 | 15.06.2009 19:10 |
Чтение из файла | pautina | Общие вопросы Delphi | 8 | 23.01.2009 15:48 |
чтение из файла | Илья500 | Общие вопросы C/C++ | 26 | 05.12.2008 00:37 |