С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
xaker1
7 / 7 / 0
Регистрация: 21.02.2011
Сообщений: 80
#1

c++ argv - C++

24.05.2011, 22:57. Просмотров 1376. Ответов 3
Метки нет (Все метки)

Простой скрипт:
C++
1
2
3
4
5
6
#include<iostream>
int main(int argc, char *argv[])
{
for(int i=0; i<argc; i++) cout<<i<<":"<<argv[i]<<"\t";
return 0;
}
Некорректно работает при подаче вместо одного из аргументов "*", вместо * подставляется имя скрипта и имя исходника (откуда?) поочереди.

Как можно решить данную проблему?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2011, 22:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос c++ argv (C++):

Что есть argc и **argv в функции int main(int argc, char **argv)? - C++
Здраствуйте, уважаемые кодеры! Что означает argc и **argv в функции int main(int argc, char **argv), ни как не могу понять эти переменные...

Отличие char *argv[] от char ** argv - C++
Подскажите отличие между int main(int argc, char *argv) { //.... } и int main(int argc, char** argv) { //.... }

c++ argv[0] - C++
if всегда 0 даже если path == &quot;G:\Windows\en-US\s.exe&quot; хотя сам path и есть &quot;G:\Windows\en-US\s.exe&quot; path=argv; cout &lt;&lt; path; ...

И снова argv[] - C++
Всем привет! Сегодня столкнулась вот c такой вот непонятностью: int _tmain(int argc, char *argv) { cout&lt;&lt;argv; }

Argc и Argv - C++
Всем привет, у меня такой вопрос, как правильно вызвать данную функцию int test(int argc, char* argv){ } Я делала так, но компилятор...

Ошибка с argv - C++
здравствуйте,у меня есть такая функция main int main (int argc, char *argv) { if (strcmp(argv,&quot;c&quot;)==0) codfile(argv,argv); ...

3
Jupiter
Каратель
Эксперт С++
6561 / 3982 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
24.05.2011, 23:05 #2
в argv[0] хранится директория и имя исходника
0
xaker1
7 / 7 / 0
Регистрация: 21.02.2011
Сообщений: 80
24.05.2011, 23:07  [ТС] #3
это я знаю, но
Код
./cronctl add xaker1 01 11 01 11 * * /usr/bin/ping -t google.com
0:./cronctl     1:add   2:xaker1        3:01    4:11    5:01    6:11    7:cronctl       8:cronctl.cpp   9:cronctl       10:cronctl.cpp  11:/usr/bin/ping        12:-t  13:google.com

01      11      01      11      cronctl cronctl.cpp cronctl cronctl.cpp /usr/bin/ping -t google.com
1-я строка - вывод всех argv, 2-я - сборная строка (с 3-й до конца.)
0
Evg
Эксперт CАвтор FAQ
18383 / 6431 / 441
Регистрация: 30.03.2009
Сообщений: 17,850
Записей в блоге: 28
25.05.2011, 00:10 #4
Символ * раскрывает командный интерпретатор и преобразовывает её в список всех файлов в текущем каталоге. Её надо брать в кавычки (или в одинарные кавычки), чтобы передалась в программу без изменений

Добавлено через 46 секунд
Для истории похожая тема: http://www.cyberforum.ru/cpp/thread152233.html
2
25.05.2011, 00:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2011, 00:10
Привет! Вот еще темы с ответами:

Дебаггер и argv - C++
Как посылать параметры запуска программы при дебагинге? При исполнении в эмуляторе DOS'а всё просто: myprog.exe &quot;someparameter&quot; 12318921...

argv и argc - C++
Для чего нужны аргументы argc и argv? Как ими пользоваться и оперировать с ними? И почему *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 - C++
Вопрос как на Си выделяется память на int main(int argc, cahr **argv). При запуске программы принципе все равно, но если передан 1...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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