Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Функции

Директивы препроцессора

Типовая структура программы на Си.

Структура программы на Си.

Программа на Си имеет определенную структуру:

· включение необходимых внешних файлов - #include;

· определения пользователя для удобства работы - #define;

· объявление глобальных переменных и констант;

· описание функций - обработчиков прерываний;

· описание других функций используемых в программе;

· функция main - это обязательная функция.

 

#include <mega16.h>

#include <delay.h>

 

// объявление глобальных переменных

// Функции

Function INT

{

//Объявление локальных типов переменных

//Операторы

}

 

Function 1

{

//Объявление локальных типов переменных

//Операторы

}

// Главная функция программы

Int main (void)

{

//Объявление локальных типов переменных

// Операторы

}

 

Компилятор языка Си содержит препроцессор, который позволяет осуществлять макроподстановки, условную компиляцию и включение именованных файлов. Препроцессор это программа предварительной обработки текста непосредственно перед трансляцией. Строки, начинающиеся с #, являются командами этого препроцессорa или директивами. Фактически препроцессор расширяет возможности языка Си, реализуя такие функции, которые в других языках входят в состав самого языка.

//delay functions
#include <delay.h>
/* перед компиляцией, препроцессор компилятора вставит вместо этой строчки текст "хидера" delay.h - этот файл содержит функции для создания пауз в программе.*/

#include <mega16.h> /* перед компиляцией, препроцессор компилятора вставит вместо этой строчки содержимое (текст) заголовочного файла "хидера" mega16.h - этот файл содержит перечень регистров имеющихся в МК ATmega16 и соответствие их названий их физическим адресам в МК.

#define PI 3.14159265 задает символическое имя PI для константы 3.14159265. После этого имя PI можно использовать вместо числового значения. Препроцессор находит все вхождения слова PI в текст и заменяет их на константу. #include <stdio.h> (stdio - от слов standard input/output). Имя h-файла записывается в угловых скобках, если этот h-файл является частью стандартной Си-библиотеки и расположен в одном из системных каталогов.

Имена h-файлов, созданных самим программистом в рамках разрабатываемого проекта и расположенных в текущем каталоге, указываются в двойных кавычках, например,

#include "abcd.h"

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

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

 

Float sin (float x);

имеет один аргумент x типа float (вещественное число). Результат функции также имеет тип float. При вызове фукция sin вычисляет синус числа, переданного ей в качестве вещественного аргумента, и возвращает вычисленное значение в вызывающую программу.

Функция - имеет { "тело" } в фигурных скобках. Тело - это код на Си, определяющий то, что делает функция. которая. Тело программы, как и тело любой другой функции, помещается между открывающей и закрывающей фигурными скобками.

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

Работа программы всегда начинается с функции с именем main.

<== предыдущая лекция | следующая лекция ==>
Язык Си | Типы данных. Void Function1 (int n, char c)
Поделиться с друзьями:


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


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



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




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