Исходники
Статьи
Языки программирования
.NET Delphi Visual C++ Borland C++ Builder C/С++ и C# Базы Данных MySQL MSSQL Oracle PostgreSQL Interbase VisualFoxPro Веб-Мастеру PHP HTML Perl Java JavaScript Протоколы AJAX Технология Ajax Освоение Ajax Сети Беспроводные сети Локальные сети Сети хранения данных TCP/IP xDSL ATM Операционные системы Windows Linux Wap Книги и учебники
Скрипты
Магазин программиста
|
Аргументы функции main()В языке C заданы два встроенных аргумента функции main: argc и argv. Выглядит это так: int main(int argc, char *argv[]) {...} Аргумент argc типа integer содержит в себе количество аргументов командной строки. Аргумент argv типа char - указатель на массив строк. Каждый элемент массива указывает на аргументы командной строки. Один параметр отделяется от другого пробелами.
В средах разработки фирмы 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 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Рейтинги
|