![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
marina12 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 15.2.2013 Репутация: нет Всего: нет |
Здравствуйте!
Программа сортирует числа из файла "chisla.txt" и строки из файла "stroki.txt" методом пузырька.
Помогите пожалуйста,как сделать так,чтобы программа запускалась из командной строки, при этом имя файла передавалось бы в виде первого параметра командной строки,а второй параметр командной строки определял бы тип файла: • -n – числовые значения • -s – строковые значения То есть команда prog.exe chisla.txt –n должна запустить сортировку числовых значений, считываемых из файла chisla.txt. Команда prog.exe stroki.txt –s должна запустить сортировку строковых значений, считываемых из файла stroki.txt. Или приведите примеры, как работать с параметрами... Заранее спасибо! |
|||
|
||||
fish9370 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 1 Всего: 1 |
количество переданных аргументов хранится в argc
аргументы, включая имя программы, хранятся в массиве строк
обработать можно как-то так:
по принципу конечного автомата в линуксе конечно, можно сделать поинтереснее Это сообщение отредактировал(а) fish9370 - 14.5.2013, 19:34 -------------------- undefined |
||||||
|
|||||||
marina12 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 15.2.2013 Репутация: нет Всего: нет |
Вот попробовала, что неправильно?
Ошибку выдаёт... Это сообщение отредактировал(а) marina12 - 14.5.2013, 21:52 Присоединённый файл ( Кол-во скачиваний: 9 ) ![]() |
|||
|
||||
feodorv |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 12 Всего: 45 |
Если файл не открыт, то смысла в последующем коде нет. Поэтому:
Почему произошла ошибка открытия файла - другой вопрос. Можно, например, так поступить:
Добавлено через 5 минут и 51 секунду А здесь некоторый бардак наблюдается))) По крайней мере, проверку fin1 на NULL нужно делать сразу после fopen, а не спустя 10 строчек. Да и ретурны нужны в случаях возникновения ошибки... А зачем вам массив double-чисел размером с число байт файла? Чтобы наверняка? -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
||||
|
|||||
fish9370 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 1 Всего: 1 |
Марина, давай приведем твой код в порядок?
поделим программу на отдельные логические блоки (функции), например: - сортировка пузырьком - чтение данных из файла - анализ параметров командной строки - исполнение программы (main) оформим код красиво, и тогда, поверь, все станет легко и приятно Добавлено через 13 минут и 55 секунд еще пара замечаний, текстовый файл лучше всего читать построчно (это спрячет один внутренний цикл, программа станет меньше):
параметры должны быть примерно так (так принято)
т.е. имя файла указывается как дополнительный параметр к параметру -s и займись английским, он не такой сложный, а в жизни пригодится -------------------- undefined |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |