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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
#1

Реализация управления из командной строки - C++

03.09.2012, 22:52. Просмотров 787. Ответов 5
Метки нет (Все метки)

Всем приветики-чмок. Есть пара вопросов:

1. Как правильно реализовать управление типа "gccp file show f.cpp" (название_программы команда подкоманда1 адрес_объекта)? Может, как массив указателей на функции? Или деревья какие-нибудь? То есть, не _лишь_бы_работало_,а как лучше сделать по уму.

2. Допустим, я делаю в терминале: cd C:\pr\cpp. Как Windows (да или где угодно, если есть универсальный способ) получить вот этот вот самый адрес (C:\pr\cpp) в виде строки или чего-нибудь еще?

Заранее спасибо, с меня плюсики.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.09.2012, 22:52     Реализация управления из командной строки
Посмотрите здесь:

Реализация управления клавишами(стрелки) - C++
Всем привет. Собственно в чем вопрос. Пишу простенькую базу данных студентов и хочу реализовать выбор в меню как в биосе. Тобишь, у...

Имитация командной строки - C++
Написать программу на С++, имитирующую командную строку. Программа должна уметь запускать exe-файлы, имена/пути которых вводятся...

использование командной строки - C++
Объясните, пожалуйста, как через аргументы командной строки скопировать файл в файл?

аргементы командной строки - C++
ПОдскажите, как через аргументы командной строки вывести {1 2 3 4 5} в файл по блочно из массива?

Параметр командной строки - C++
Здрасте, здрасте!! Вопрос такой есть код: LPWSTR *szArglist; int nArgs; int i; LPWSTR temp=L"/i"; szArglist =...

Компиляция из командной строки - C++
Доброго времени суток. У меня к Вам вопрос по компиляции из коммандной строки. Делаю простенький .с файл hello.c: #include...

Формат командной строки - C++
Нужно выполнить задание. Есть X потоков в которых лежит по объекту, эти объекты я в случайном порядке сую в контейнер размером Y. При...

Использование командной строки - C++
У меня есть файл по адресу D:/Faylik/data.txt и его нужно скопировать с помощью командной строки в файл D:/F/data2.txt . Подскажите, плиз,...

Калькулятор для командной строки - C++
Помогите пожалуйста написать калькулятор для командной строки...

Ввод аргументов командной строки - C++
Здравствуйте, такой вопрос: как задаются аргументы командной строки в си? нужно скомпилировать exe и запустить его через командную строку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andsteadur
153 / 137 / 3
Регистрация: 23.05.2009
Сообщений: 275
03.09.2012, 22:54     Реализация управления из командной строки #2
C++
1
int main(int n, char **args)
n - количество параметров
args - массив строк параметров
Разве не подходит?
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
03.09.2012, 23:19  [ТС]     Реализация управления из командной строки #3
Andsteadur, не-не-не! Как принять параметры из командной строки я знаю, меня интересует представление всех допустимых аргументов. Допустим: gccp file show f.cpp.
file - указание на... эээ... семейство команд, ведь сам по себе gccp file смысла не имеет. show, например, можно указать только после gccp file, но никак нельзя написать, например gccp directory show (у directory свой набор команд, в который show ну никак не входит).

Не по теме:

Прошу прощения за поток сознания, не знаю как такое нормальными терминами объясняется.

OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
03.09.2012, 23:36     Реализация управления из командной строки #4
Нормальными терминами это называется синтаксический анализ.

К сожалению, для разбора нет ничего умнее "первым может идти ключевое слово file, directory или путь к файлу", "если file, то за ним может идти show, delete, ...". Вот вам в первую очередь надо составить набор таких правил.

Если не хочется возиться с написанием своего, то есть генераторы парсеров, которые по набор правил сделают вам разбиралку строки в соответствии с правилами. Но их тоже надо учить, как и формат записи правил.
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
04.09.2012, 08:46  [ТС]     Реализация управления из командной строки #5
Так зачем парсер если все можно получить как argv[ 1 ], argv[ 2 ] … argv[ n ]?
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
04.09.2012, 15:19     Реализация управления из командной строки #6
argv разобьёт строку по пробелам, а дальше? Дальше надо идентифицировать токены, чтобы знать, что такой-то argv[i] — это ключевое слово file, другой — это путь к файлу, третий — хз что и возможная ошибка. Потом этот список токенов ещё отдать синтаксическому анализатору, чтобы он разобрался, правильная ли это команда и что она вообще значит.
Yandex
Объявления
04.09.2012, 15:19     Реализация управления из командной строки
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru