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

Определить, существует ли треугольник со сторонами a, b, c - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ класс Символьное дифференцирование. http://www.cyberforum.ru/cpp-beginners/thread65209.html
Помогите пожалуйста с созданием такого класса. НОВЫЕ ПОНЯТИЯ: наследование, виртуальные методы. Реализовать абстрактный класс Expression с чисто виртуальными методами Expression *diff(); void...
C++ Надо решить контрольную. Помогите пожалуйста решить контрольную работу по информатике: 1) Написать программу на языке Visual Studio 2008, которая бы принимала в себя два числа, а затем делала бы их сложения. 2)... http://www.cyberforum.ru/cpp-beginners/thread65177.html
Несколько заданий - действия над числами C++
Если кто может, может поможет?? не успеваю и не знаю как это делать пока.... Задача 1: Написать программу на Си для решения задачи в соответствии с вариантом. Варианты: 16) Вводиться трехзначное...
C++ Рекурсия:написать функцию которая возвращает степень числа
помогите написать рекурсию которая возводит число в степень..из книги Напишите рекурсивную функцию которая возводит число в степень путем многократного умножения числа самого на себя,напрмер если...
C++ Конечный автомат http://www.cyberforum.ru/cpp-beginners/thread65156.html
реализовать метод поиска строки в текстовом файле с помощью конечного автомата
C++ Упорядочивание массивов Помогите, пожалуйста, решить задачу... Написать программу упорядочивание массивов типа int, float и complex по убыванию. Функции, упорядочивающие массивы имеют одно и тоже имя. Это надо в с++... подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.11.2009, 09:55
Да, действительно, так все и есть (проверил на 2008, Dev-CPP у меня отсутствует). А происходит это вот почему:
строки 75 и 76 Вашего кода
C++
1
2
        first >> n;
        second >> m;
здесь вы считываете первые числа из first.txt и second.txt, а затем динамически выделяете память
строка 78:
C++
1
masA = new float[n];
и строка 89:
C++
1
 masB = new float[m];
Если у Вас в файлах first.txt и second.txt числа есть (а значит и в переменных n и m тоже), то память будет выделена. Но если в файлах отсутствуют числа (и в переменных n и m значит тоже отсутствуют значения), то тогда выдается именно такая ошибка. Так и должно быть.
Теперь ответы на Ваши вопросы:
Цитата Сообщение от Neys Посмотреть сообщение
Столкнулся с проблемой: файл создан, но он пустой. Тогда вылетает ошибка. Как можно её предотвратить?
Записать в файлы first.txt и second.txt необходимые значения.

Цитата Сообщение от Neys Посмотреть сообщение
Можно ли сделать ввод из файла, не указывая первым элементом число всех элементов массива?
Можно, но тогда нужно будет два раза считывать данные из каждого файла - первый раз считывая, вычисляем кол-во элементов в файле и заносим это значение в переменную n или m соответственно. Затем выделяем динамически память (как у Вас и сделано) используя значение n или m. Затем считываем сами элементы из файла.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru