Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2013, 20:49   #11
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
Т.е. если моя программа будет запускаться через лаунчер, то там следует указывать аргументы командной строки, а если она будет запускаться напрямую, то не нужно?
Читаешь через строку?

Цитата:
Вариант 1. У вас есть лаунчер, который запускает программу с указанием каких-то параметров коммандной строки.
Яркий пример - игры на движке source.
Все они запускаются файлом hl2.exe, которому передается параметр с указанием игры (например запуск Counter Strike Source hl2.exe -game cstrike)
В вашей терминологии походу, hl2 запускается "напрямую", но при этом получает аргументы командной строки. При этом hl2 и является лаунчером и запускает остальные игры, опять же передавая им аргументы (если не передавал бы - то и не нужен бы он был, наверное).
rrrFer вне форума Ответить с цитированием
Старый 06.05.2013, 21:53   #12
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

Цитата:
В вашей терминологии походу, hl2 запускается "напрямую", но при этом получает аргументы командной строки. При этом hl2 и является лаунчером и запускает остальные игры, опять же передавая им аргументы (если не передавал бы - то и не нужен бы он был, наверное).
Немного не понял, сказано было мне или ТС?

В любом случае дополню, что файл hl2.exe запускается лаунчером (в его роли выступает Steam) или через ярлык (в пиратках), в обоих случаях им передаются параметрами какую игру они запускают (и, иногда, другое).

Просто "все игры" на Source (по крайней мере сделочные на одной версии движка) отличаются только "ресурсами".

Т.е. hl2.exe по параметру коммандной строки определяет что от него хотят. Вообще не удачный пример. надо было на примере -joinserver рассказать (игра сразу после запуска присоединяется к серверу).
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс

Последний раз редактировалось ROD; 06.05.2013 в 21:58.
ROD вне форума Ответить с цитированием
Старый 06.05.2013, 22:14   #13
RussDragon
Форумчанин
 
Аватар для RussDragon
 
Регистрация: 07.04.2012
Сообщений: 216
По умолчанию

rrrFer, спокойней, тут ничего страшного в моем вопросе нет. Я читаю все сообщения полностью, просто когда я не понимаю какую-то их часть, я задаю вопрос.

ROD, Ладно, допустим я сделаю программу с граф. интерфейсом, скомпилирую, но не буду использовать аргументы командной строки, то что тогда будет? Как программа будет запускаться?
RussDragon вне форума Ответить с цитированием
Старый 06.05.2013, 22:38   #14
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
Немного не понял, сказано было мне или ТС?
TC
Цитата:
rrrFer, спокойней
я невероятно спокоен
Цитата:
ROD, Ладно, допустим я сделаю программу с граф. интерфейсом, скомпилирую, но не буду использовать аргументы командной строки, то что тогда будет? Как программа будет запускаться?
программа будет запускать как обычно, неважно с каким она фейсом.

аргументы командной строки - способ передачи программе набора начальных данных. Ты можешь написать программу, которая будет принимать через эаргументы размер массива и его элементы, но можешь написать программу которая запросит эти данные у юзера (и ваще неважно будет она консольно или нет).

Код:
if (argc < 2) { /* запрашиваем что-то у юзера */ }
else { /* берем данные из аругментов main */ }
ну как то так это может выглядеть

первым аргументом является имя запускаемой программы, и это тоже используется, ну например, если программа должна обработать все файлы в текущем каталоге (но свой исполняемый файл она портить при это не должна).

Последний раз редактировалось rrrFer; 06.05.2013 в 22:42.
rrrFer вне форума Ответить с цитированием
Старый 06.05.2013, 23:03   #15
RussDragon
Форумчанин
 
Аватар для RussDragon
 
Регистрация: 07.04.2012
Сообщений: 216
По умолчанию

То есть, если я не буду обрабатывать А.К.С. , то программа все равно запуститься? То есть, на начальных этапах А.К.С. можно не использовать?
RussDragon вне форума Ответить с цитированием
Старый 07.05.2013, 03:24   #16
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
То есть, если я не буду обрабатывать А.К.С. , то программа все равно запуститься? То есть, на начальных этапах А.К.С. можно не использовать?
загадками какими-то пишешь, но если я верно все разгадал - то "да, да".
rrrFer вне форума Ответить с цитированием
Старый 07.05.2013, 08:48   #17
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

Цитата:
Сообщение от RussDragon Посмотреть сообщение
То есть, если я не буду обрабатывать А.К.С. , то программа все равно запуститься? То есть, на начальных этапах А.К.С. можно не использовать?
В рот мне чай! Такой няшной аббревиатуры я еще не встречал.

Я вам скажу больше, многие компиляторы позволяют писать вообще так:

Код:
int main()
{
...
return 0;
}
Честно говоря не знаю, что по этому поводу говорит стандарт, но не могу вспомнить компилятора, в котором этот код не прокатывал бы. (разумеется, тут вы не сможете узнать, что вам передали в коммандной строке).
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс
ROD вне форума Ответить с цитированием
Старый 07.05.2013, 10:29   #18
RussDragon
Форумчанин
 
Аватар для RussDragon
 
Регистрация: 07.04.2012
Сообщений: 216
По умолчанию

Ладно, спасибо вам за помощь! А аббревиатура действительно няшная получилась...
RussDragon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C] Аргументы командной строки. Вычисление дня недели. hvz- Помощь студентам 1 14.01.2013 20:36
Аргументы командной строки в студии. the_deer_one Общие вопросы C/C++ 8 11.03.2012 22:43
Аргументы командной строки Sadist989 Общие вопросы C/C++ 9 22.06.2011 12:53
аргументы командной строки ololo-schoolboy Общие вопросы C/C++ 2 19.05.2011 22:50
Аргументы командной строки в Boost.test nazavrik Общие вопросы C/C++ 0 18.02.2010 17:23