MyTetra Share
Делитесь знаниями!
Аргументы функции main()
Время создания: 16.02.2009 18:42
Текстовые метки: C, C++, main, argc, argv
Раздел: Компьютер - Программирование - Язык C (Си)
Запись: xintrea/mytetra_syncro/master/base/0000000777/text.html на raw.github.com

В языке C заданы два встроенных аргумента функции main: argc и argv.

Выглядит это так:

int main(int argc, char *argv[])

Аргумент argc типа integer содержит в себе количество аргументов командной строки.

Аргумент argv типа char - указатель на массив строк. Каждый элемент массива указывает на аргументы командной строки. Один параметр отделяется от другого пробелами.

  • argv[0] - полное имя запущенной программы
  • argv[1] - первая строка записаная после имени программы
  • argv[2] - вторая строка записаная после имени программы
  • argv[argc-1] - последняя строка записаная после имени программы
  • argv[argc] - NULL

В средах разработки фирмы Borland (Borland Builder C++, Borland C++ и т.п.) предусмотрен еще и третий аргумент env, который, так же как и argv является указателем на массив строк, но содержит установки среды:

int main(int argc, char *argv[], char *env[])

Если необходимо в качестве параметра иметь строку, содержащую пробелы, то ее надо заключить в двойные кавычки. Если аргументом является число, то оно рассматривается как строка. Для работы с ним, как с числом необходимо его преобразовать, используя соответствующую функцию.

Пример:

#include "stdio.h"

#include "stdlib.h"

int main(int argc, char *argv[])

{

int i;

printf("Количество аргументов командной строки %d \n", argc);

printf("Аргументы командной строки:\n);

for (i = 0; i < argc; i++) printf("%s\n", argv[i]);

return 0;

}

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования