Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как обрабатыавать командную строку?  (Прочитано 13254 раз)
0 Пользователей и 1 Гость смотрят эту тему.
shutnik
Гость
« : 27-12-2004 14:35 » 

Люди подскажите как правильно обрабатывать
командную строку

в общем надо обработать например такую командную строку
          filetext.txt /t 5 /tf 7.5 /d

также подскажите какой максимальной длины может командная строка
Записан
baldr
Команда клуба

cy
Offline Offline
Пол: Мужской
Дорогие россияне


WWW
« Ответ #1 : 27-12-2004 14:53 » 

Поясни, пожалуйста. Обработка - это тебе надо ее только получить в какую-то переменную или выделить все ключи в отдельные переменны? Или выполнить действия в зависимости от ключей?
Максимальная длина... В DOS - 128 символов. Это связано с размером PSP.
Записан

Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
shutnik
Гость
« Ответ #2 : 27-12-2004 17:43 » 

в общем есть код
нужно обработать командную строку

Нужно
выполнить действия в зависимости от ключей

как эти ключи получить  /t 5 /tf 7.5 /d
Записан
Analyzer
Гость
« Ответ #3 : 27-12-2004 18:39 » new

В подобных случаях я обычно использую функцию getopt.
Записан
shutnik
Гость
« Ответ #4 : 27-12-2004 23:13 » 

Не нашел эту функцию getopt
Записан
Grinders
Гость
« Ответ #5 : 28-12-2004 03:37 » 

#include <unistd.h>

int getopt(int argc, char * const argv[], const char *optstring)
Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 28-12-2004 09:54 » 

shutnik, насколько я понимаю, тебе надо для Windows.

Если ты пишешь консольное приложение, то у функции main есть массив параметров командной строки argc, argv
Если приложение виндовое, то аргументы командной строки (не разбитая на отдельные слова) передаются как параметр lpCmdLine функции WinMain.
Если приложение для WinNT/2000/XP то можно разбить командную строку на отдельные слова при помощи юникодной функции CommandLineToArgvW

В худшем случае, когда приложение виндовое и должно работать под Windows 98/Me, то надо писать свой разбор командной строки.
О том, как это можно сделать на С++ см. пример http://www.codeproject.com/cpp/ccmdline.asp
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #7 : 14-04-2006 20:41 » 

(комент:)

в FAQ или вернуть тему обратно
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines