настройка char ** argv в коде

Итак, у меня есть программа с именем prog.exe, которая начинается с

int main(int argc, char** argv)

Параметры, которые я передаю ему:

prog.exe news-rec

или же
prog.exe news-rec -t -p

Как я могу настроить значения этих параметров в коде, чтобы мне не пришлось запускать программу из командной строки.

Например для

prog.exe news-rec

Я думаю, argc = 1, но как я буду настраивать argv, что это будет?
Я пытался делать

argv[0] = "news-rec";

но это не работает

0

Решение

Так как argv[0] содержит имя самого исполняемого файла. Пытаться

argc = 2;
argv[1] = "news-recc";
2

Другие решения

Вам не нужно давать prog.exe в аргументе командной строки, поскольку имя exe всегда ARGV [0] то есть первый аргумент. Помимо этого, вы можете хранить столько аргументов в ARGV по вашему желанию, например:

argv[1] = "new-rec" ;
argv[2] = "-t" ;
argv[3] = "-p" ;

и так далее…

Исходя из тега, что вы работаете в Visual Studio, вы можете попробовать:

Вкладка «Проект» -> «Свойства» -> «Свойства конфигурации» -> «Отладка», а затем введите в правой части под («Аргументы команды»), аргументы, которые вы хотите передать исключая prog.exe. ARGC автоматически примет количество аргументов, которые вы передали.

2

По вопросам рекламы [email protected]