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

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

Войти
Регистрация
Восстановить пароль
 
kate11
0 / 0 / 0
Регистрация: 07.10.2011
Сообщений: 33
#1

Argc и Argv - C++

07.08.2012, 06:05. Просмотров 918. Ответов 5
Метки нет (Все метки)

Всем привет, у меня такой вопрос, как правильно вызвать данную функцию
C++
1
2
int test(int argc, char* argv[]){
}
Я делала так, но компилятор выдает ошибки
C++
1
2
3
4
int main(int argc, char* argv[]){
for( i = 1; i<argc; i++)
test(1, argv[i] = "-n 1")
}
Что-то я неправильно делаю...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2012, 06:05     Argc и Argv
Посмотрите здесь:

Argc, argv[] - C++
int _tmain(int argc, char* argv) { setlocale(LC_ALL, &quot;Russian&quot;); printf(&quot;Значение argc равно %d \n\n&quot;, argc); printf(&quot;В...

argv и argc - C++
Для чего нужны аргументы argc и argv? Как ими пользоваться и оперировать с ними? И почему *argv пишется с символом *, это же ведь массив.

Argc, Argv замена - C++
Всем доброго времени суток, столкнулся с такой проблемой, нет возможности в параметрах ф-ции указать вышеупомянутые параметры, а указать их...

Argc и argv применение - C++
Подскажите пожалуйста. Дошел до главы про argc и *argv в книге Шилдта. И там написано что все зависит(как я понимаю) от имени файла. Есть...

Объясните значение argc и argv - C++
Ув. гуру! Дошёл в учебники до раздела об аргументах argc и argv, но что-то ничего не понял.. #include &lt;iostream&gt; using namespace...

Передать argc, argv в конструктор класса - C++
Добрый день! Решил я отказаться от getopt и написать разбор аргументов сам. Код получился примерно такой (выкинув &quot;лишнее&quot;). ...

Ввод данных с использованием argv и argc - C++
не могу понять почему программа не работает без использования ввода из командной строки работает,а так нет подскажите пожалуйста в чём...

argv и argc передача аргумента(пароль) - C++
я должен передать в консоли параметр &quot; пароль &quot; если пароль верен то мне выводит сообщение - пароль верен, иначе - не верен_ Вот так я...

Аргументы main(int argc, char *argv[]) - C++
Эксперты в с++,объясните пожалуйста новичку примерно понял как использовать эти аргументы,но не как не могу понять куда писать то что он...

Объясните смысл аргументов командной строки argc и argv - C++
Объясните смысл аргументов командной строки argc и argv.

Argc argv, передать несколько значений в качестве параметров - C++
void Math() { double a=2, b=3, c=9, x,y, x1,k; cout&lt;&lt;&quot;Vvedite x:&quot;;cin&gt;&gt;x; cout&lt;&lt;&quot;Vvedite x1:&quot;;cin&gt;&gt;x1; cout&lt;&lt;&quot;Vvedite...

Чтение из файла, название передано как параметры функции main argc & argv - C++
Вообще дано задание - считать из файла чётные строки, название файла должно быть передано как параметр при запуске из командной строки.. ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
682 / 584 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
07.08.2012, 08:22     Argc и Argv #2
Цитата Сообщение от kate11 Посмотреть сообщение
test(1, argv[i] = "-n 1")
в качестве второго параметра необходимо передавать массив строк, а не строку
Kojt
73 / 69 / 2
Регистрация: 19.05.2010
Сообщений: 167
07.08.2012, 08:28     Argc и Argv #3
Следует обратить внимание на объявление переменной:
C++
1
char* argv[]
Это двухмерный массив, можно сказать - массив строк
В argv лучше не запихивать свои строки.
Если функция test должна обрабатывать параметры командной строки, тогда ее нужно вызывать так:
C++
1
2
3
int main(int argc, char* argv[]){
test(argc, argv);
}
Если требуется запустить проект с заданными параметрами, тогда необходимо выполнить настройку проекта, указав командную строку для запуска (и для режима дебаг, и для режима релиз).

Рекомендую читать сообщения об ошибках внимательно и вникать в суть, обычно все расписано, в чем проблема. На начальном этапе это не очень просто, но этот навык необходим.
Evg
Эксперт CАвтор FAQ
17530 / 5768 / 368
Регистрация: 30.03.2009
Сообщений: 15,859
Записей в блоге: 26
07.08.2012, 09:16     Argc и Argv #4
На всякий случай: Отличие char *argv[] от char ** argv
Kojt
73 / 69 / 2
Регистрация: 19.05.2010
Сообщений: 167
07.08.2012, 09:34     Argc и Argv #5
Я так и не понял в чем разница между char *argv[] и char **argv
Что первое что второе - объявление двумерного массива
Или тут разница будет в работе в таком случае:
C++
1
2
3
4
5
6
int f()
{
  char *arr1[];
  char **arr2;
  ...
}
Evg
Эксперт CАвтор FAQ
17530 / 5768 / 368
Регистрация: 30.03.2009
Сообщений: 15,859
Записей в блоге: 26
07.08.2012, 10:43     Argc и Argv #6
Цитата Сообщение от Kojt Посмотреть сообщение
Я так и не понял в чем разница между char *argv[] и char **argv
Для параметра функции разницы нет

Цитата Сообщение от Kojt Посмотреть сообщение
Или тут разница будет в работе в таком случае
Разница есть. Вариант с массивом не скомпилируется (т.к. пустой массив задавать нельзя).

Просто всё упирается в то, что разработчики Си придумали такой вот синтаксис. Зачем - фиг их разберёт. Но массив, описанный в виде параметра функции трактуется не так, как массив, описанный в виде локальной или глобальной переменной
Yandex
Объявления
07.08.2012, 10:43     Argc и Argv
Ответ Создать тему
Опции темы

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