Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Функция main




Функции

В языке Си функцией называется абсолютно любая подпрограмма, в отличие от многих других языков, которые разделяют понятие функции и процедуры/подпрограммы.

Итак, функция - это подпрограмма, которая к качестве результата своей работы имеет некое (или несколько) значение. Говорят, что это значение функция возвращает. Синтаксис объявления функций в Си такой:

<тип> <имя>([<тип> <аргумент>[, <тип> <аргумент2]:]) {<тело функции>}

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

Если не требуется, чтобы функция вообще что-то возвращала, то ей назначают тип void.

Внутри функции должен стоять специальный оператор return <переменная>, сразу после которого функция прекращает своё выполнение и возвращает значение переменной. В функциях типа void этот оператор не нужен, но без операндов может присутствовать, чтобы принудительно прервать выполнение функции.

Функция может быть вызвана только после того места, где была определена. Это не всегда удобно, поэтому есть специальное средство, для того чтобы этого избежать - прототип функции. Прототип содержит в себе тип функции, её имя и список типов аргументов. Например, такое объявление:

float stepen(float, int);

Оно говорит о том, что где-то в тексте программы описана функция stepen типа float, первым аргументом которой является переменная типа float, а вторым - int.

При этом сама функция может выглядеть как-то так:

#include <math.h>

#include <stdio.h>

#include <conio.h>

 

float stepen(float,int);

 

int main()

{

clrscr();

printf("%f",stepen(3,4));

getch();

return 0;

}

 

float stepen(float x, int y)

{

return exp(log(x)*y);

}

Прототип float stepen(float,int); легко поместить в начало программы, а саму функцию - в любое удобное место, вызывать её при этом можно будет из любой точки.

Программа на языке Си состоит из одних только функций. Чтобы она могла начать работу, существует специальное зарезервированное имя функции main, которую вызывает операционная система. Функция main имеет тип int. Она возвращает код ошибки.

Все ошибки выполнения программы, которые могут привести к её непредвиденному завершению, были определены, и каждой из них был присвоен свой уникальный код - код ошибки. Он позволяет узнать, что привело к завершению программы, и таким образом может помочь понять, где была ошибка в коде. Корректному завершению программы соответствует код ошибки 0. Поэтому в конце функции main нужно ставить строку

return 0;




Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 340; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.041 сек.