Исходники.Ру - Программирование
Исходники
Статьи
Книги и учебники
Скрипты
Новости RSS
Магазин программиста

Главная » Статьи по программированию » Borland C++ Builder - Приложения и распространение программ »

Обсудить на форуме Обсудить на форуме

Аргументы функции main()

В языке 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[], char *env[]) {
	int i;
	printf("Количество аргументов командной строки %d \n", argc);
	printf("Аргументы командной строки:\n);
	for (i = 0; i < argc; i++)
		printf("%s\n", argv[i]);
	printf("\nАргументы состояния среды:\n");
	for (i = 0; env[i] != NULL; i++)
		printf("%s\n", env[i]);
	return 0;
}

В листинг нужно добавить getchar(); перед return 0; чтобы окно при выполнении программы сразу не закрывалось
для ruford : лучше не getchar() а getch() содержится в conio.h

Может пригодится:


Автор:
Прочитано: 4839
Рейтинг:
Оценить: 1 2 3 4 5

Комментарии: (0)

Добавить комментарий
Ваше имя*:
Ваш email:
URL Вашего сайта:
Ваш комментарий*:
Код безопастности*:

Рассылка новостей
Рейтинги
© 2007, Программирование Исходники.Ру