Структура программы на языке си

      Комментарии к записи Структура программы на языке си отключены

Программа на языке Си определяется как совокупность одного или нескольких модулей. Модулем является самостоятельно компилируемый файл. Модуль содержит один или несколько функций. Функция состоит из операторов языка Си. Рис.1.

Рис.1 Структура программы на языке Си.

Внутренняя структура программы

Исполняемая программа на Си состоит из 4 частей: область команд, область статических данных, область динамических данных, область стека. см. Рис.2.

1. Область команд содержит машинные команды;

2. Стек используется для временного хранения данных и адресов возврата при вызовах подпрограмм;

3. Область статических данных для хранения переменных программы;

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

Пример программы на СИ

заголовок

# include//включение файла

void main (void) /*пример*/- имя функции и комментарии

{

тело функции

int num;

num = 1;

printf(пример программы); // вывод на экран

printf(на Си);

} // конец тела функции

Программа Си всегда имеет функцию main(). С нее начинается выполнение программы.

Рис.2. Внутренняя структура программы на Си.

БАЗОВЫЕ ЭЛЕМЕНТЫ ЯЗЫКА СИ

1. Комментарии – используются для документирования программы.

§ // — далее все игнорируется до конца строки.

§ /* Текст */ — в любом месте программы

§ /* Строка 1 — для комментария любой длины

строка 2

строка 3

*/

2. Идентификатор — это имя, которое присваивается какому-либо объекту (переменной). Используются строчные и прописные английские буквы, цифры и знак подчёркивания. Строчные и прописные буквы различаются. Начинаются с буквы или знака подчеркивания. Длина не ограничена.

В современном программировании часто используется для создания идентификаторов Венгерская нотация. Например: WordParametrFormat или Word_Parametr_Format.

3. Служебные слова – это слова, с которыми в языке жестко сопоставлены определённые смысловые значения и которые не могут быть использованы для других целей. Это имена операторов, команды препроцессора и так далее.

ДАННЫЕ В ПРОГРАММЕ НА СИ

Каждая программа оперирует в программе с данными. Они присутствуют в программе в виде переменных и констант.

Данные, которые могут изменяться или которым может присваиваться значения во время выполнения программы, называются переменными.

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

Константы

Константы — это фиксированные значения. Значение, будучи установлено, больше не меняется.

Типы констант:

a) Целые и длинные целые. Записываются в десятичной, восьмеричной и шестнадцатеричной системе счисления.

Десятичная система:

Размер:Диапазон чисел:

16 битов ± 32768 знаковое

0 – 65535u беззнаковое — (unsigned)

32 бита ± 2147483648l знаковое длинное – (long)

0 – 4294967295ul беззнаковое длинное — (unsigned long )

Пример: 12, 12567, 24u, 135l, 4567ul

Восьмеричная система:

Если число начинается с цифры 0, оно интерпретируется как восьмиричное число

16 битов 0 ¸ 077777

0100000 ¸ 0177777u

32 бита 0200000 ¸ 01777777777l

020000000000 ¸ 037777777777ul

Пример: 0674

Шестнадцатеричная система:

Если число начинается с символа 0х, то оно интерпретируется как шестнадцатиричное

16 битов 0x0000 ¸ 0x7FFF

0x8000 ¸ 0xEFFFu

32 бита 0x10000 ¸ 0x7FFFFFFFl

0x80000000 ¸ 0xFFFFFFFFul

Пример: 0х3D4

b) Вещественные константы. Это числа с плавающей точкой. Значение имеет дробную часть. По умолчанию все вещественные константы имеют тип двойной точности double. Занимают в памяти 8 байт. Диапазон значений ± 1 e ±308.

Принудительно можно задать формат одинарной точности. Число будет занимать 4 байта. (5.75 f)

А также расширенной точности – 10 байт. (3.14L)

Знак + можно не писать. Разрешается опускать либо десятичную точку, либо экспоненциальную часть, но не одновременно (.2; 4е16). Можно не писать дробную либо целую часть, но не одновременно (100.; .8е-5)

c) Символьные константы. Это набор символов, используемых в ЭВМ.

Делятся на 2 группы: печатные и непечатные (управляющие коды). Символьная константа включает в себя только 1 символ, который необходимо заключить в апострофы и занимает 1 байт памяти.

Любой символ имеет своё двойное представление в таблице ASCII

Символ ‘А’ ‘a’ ‘ ‘ ‘\n’

Его код 65 97 32 10

Как целый тип данных ‘A’=01018, 010000012, 4116, 6510.

Управляющие коды начинаются с символа \ и тоже заключаются в апострофы. Наиболее распространенные управляющие коды:

\n – переход на новую строку

\t – табуляция (сдвиг курсора на некоторое фиксированное значение)

\b – шаг назад (сдвиг на одну позицию назад)

\r – возврат каретки (возврат к началу строки)

\f – подача бланка (протяжка бумаги на 1 страницу)

\\ — слеш

\’ — апостроф

\” — кавычки

Последние три знака могут выступать символьными константами, а также применяться в функции вывода на экран printf() , поэтому применение их в качестве символов может привести к ошибке. Например, если мы хотим вывести строку «Символ \ называется слеш», то оператор должен выглядеть так:

рrintf( «Символ \\ называется слеш»

d) Строковые константы — содержат последовательность из 1 и более символов,

заключённых в. Расходуется по 1 байту на любой символ + 1байт на так называемый ноль-символ — признак конца строки. Ноль-символ – не цифра ноль, он означает, что количество символов в строке (N) должно быть на 1 байт больше (N+1), чтобы обозначать конец строки.

Статьи к прочтению:

Язык программирования Си. Урок 1. Базовая структура программы


Похожие статьи:

  • Структура программы на языке pascal

    Введение Под языком программирования мы будем понимать совокупность средств и правил представления алгоритма в виде, приемлемом для компьютера….

  • Структура программ на языке turbopascal

    ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ КАФЕДРА С А П Р И Г О Ш И Н А Л. В. М Е Т О Д И Ч Е С К О Е П О С О Б И Е по курсу Алгоритмические языки и…