Возможные параметры функции main

Функция main может иметь тип возвращаемого значения int (задает код возврата программы операционной системе, он может использоваться в пакетных командных файлах или при запуске процесса из другого процесса). В предыдущих примерах функция main не имела параметров, но эта функция может иметь три параметра или два параметра, третий может отсутствовать, например,

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

{ …. }

Первые два  параметра передают аргументы через командную строку (количество аргументов и массив строк).

Третий параметр envp – задает контекст (среду выполнения), т.е. задает значения переменных среды окружения, переменные находятся в массиве строк, каждая переменная среды окружения это отдельная строка.

Ниже в примере выводятся на печать параметры командной строки (в любом случае существует хотя бы один параметр – это имя исполняемого файла) и возможные переменные среды окружения при запуске программы на некотором компьютере (в разных средах они могут быть разными). Также на рисунке ниже представлено окно с результатами работы программы.

#include <stdio.h>

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

{

  int i;

  printf("argc=%d", argc); // Печатаем число параметров командной строки

  // Печатаем параметры командной строки

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

  // Печатаем переменные среды окружения

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

}

 

 

 

Термины

Функция – это именованная совокупность объявлений и операторов, предназначенная для выполнения некоторой отдельной подзадачи.

Стек (англ. stack — стопка) — структура данных, в которой доступ к элементам организован по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»). В оперативной памяти выделяется специальный сегмент стека для временного хранения данных, который работает по такому же принципу.

Функции с переменным количеством параметров – функции, в которыхточное число параметров определяется только в момент вызова.

Рекурсивная функция – это функция, вызывающая саму себя.

Подставляемая функция – это функция, код которой создается в стольких экземплярах, сколько раз функция вызывается.

Указатель на функцию – это переменная, содержащая адрес размещения кода функции в оперативной памяти.

Перегрузка функций – это использование одного имени для разных функций.

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

Лекция № 8. Ввод-вывод в Си


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: