Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
yazyk_programirovania.doc
Скачиваний:
1169
Добавлен:
19.04.2015
Размер:
833.54 Кб
Скачать

Прочий синттаксис

;точка с запятой

Используется для обозначения когда выражения

Пример

inta= 13;

Совет:

Опущение точки с запятой приведет к ошибке компилятора. Ошибка может быть явной и вести на требуемую строку, а может и не вести. Если логика вывода ошибок вам не понятна - первым делом ишите упущенный символ ; в строках до той, которую подсвечивает компилятор.

{}Фигурные скобки

Фигурные скобки являются одними из главных в языке C. Они используются для разделения конструкций и часто вводят в смущение начинающих программистов.

Открытая скобка обязательно должна иметь в качетве пары закрыващую скобку.

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

Фигурные скобки определяют основную логику программы поэтому забыв поставить одну из скобок, найти ошибку будет весьма затруднительно.

Основное использование фигурных скобок:

функции

voidmyfunction(datatypeargument){

statements(s)

}

Циклы

while (boolean expression)

{

statement(s)

}

do

{

statement(s)

} while (boolean expression);

for (initialisation; termination condition; incrementing expr)

{

statement(s)

}

Операторы условия

if (boolean expression)

{

statement(s)

}

else if (boolean expression)

{

statement(s)

}

else

{

statement(s)

}

Комментарии

Комментарии используются для инфомрмирования программиста о смысловой нагрузке участков кода. Они игнорируются компилятором и не занимают места в МК.

Комментарии помогают понять или запомнить логику работы программы. В случае, если ваш код будет разбирать кто-то другой, или же вы сами после долгого от него отлучения - комментарии весьма полезны. Существует два способа определения комментариев в программе:

Пример

x= 5; // Однострочны комментарий. Заканчивается переводом строки

/* Это многострочный комментарий.

if(gwb== 0){ // однострочный комментарий правильно работает внутри многострочного

x= 3; /* но многострочный внутри многострочного - нет */

}

// не забываем закрыть - соблюдаем баланс!

*/

Совет:

При экспериментировании с кодом весьма практично комментировать участки кода, но не удалять их. В этом случае гораздо проще починить код, и отпадает необходимость набирать его заново.W

Define

Дирректива препроцессора #defineэто удобный компонентCпозволяющий программисту использовать макроопределения. Макроопределения не занимают места в памяти программ. При компиляции объявленные макроопределения просто заменяются на строку символов, таким образом имеется возможность указания какого-либо параметра (константы) сразу в нескольких местах кода.

Синтаксис:

#defineconstantNamevalue

Помни, что символ # обязательный

Пример:

#defineledPin3

// Компилятор заменит встречающее в коде ledPinна 3 во время компиляции программы.

Совет:

После директив препроцессора отсутсвует точка запятой. Если вы влепите ее туда то компилятор вылетит с ошибкой. page.

#defineledPin3; // эта запись ошибочна

Также использование знака присваивания ошибочно.

#defineledPin= 3 // тоже ошибка

#include

Директива препроцессора #includeиспользуется ля подключению к проекту внешних библиотек. Это дает программисту все возможности библиотек языкаC/C++, а также специальных, написанных для платформыArduino.

Помни, что #include, как #define, не требуют точки с запятой, и компилятор вылетит с ошибкой если вы влепите ее туда.

Пример:

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

#include<avr/pgmspace.h>

prog_uint16_t myConstants[] PROGMEM = {0, 21140, 702 , 9128, 0, 25764, 8456,

0,0,0,0,0,0,0,0,29810,8968,29762,29762,4500};

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]