Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Представление информации в языке Си: имена, типы данных, переменные и константы, массивы и строки.




 

Имена переменных или констант могут состоять из букв латинского алфавита, цифр и символа подчеркивания (_), который считается буквой. Первый символ имени обязательно должен быть буквой или символом подчеркивания. Строчные и заглавные буквы различаются, т. е. Beta, beta и BETA – это различные имена. Число символов в имени не ограничено, но значимыми (для компилятора) являются только первые 32 символа. Остальные символы имени игнорируются. Для удобства чтения программ рекомендуется в качестве имен переменных использовать только строчные буквы. Символ подчеркивания обычно используется для разделения слов, чтобы сделать имя более понятным, например, city_tax вместо citytax.

В качестве имен переменных и констант нельзя использовать зарезервированные в Си слова (ключевые слова), например: if, else, for, const, char и т.д.

 

Простые типы данных. В Си можно использовать различные типы данных для представления хранимой и обрабатываемой информации. Все типы можно разбить на две группы: целые и с плавающей точкой. Данные каждого типа занимают определенное количество байт памяти и могут принимать значения в известном диапазоне. Наиболее часто в программах на языке mikroC применяются следующие типы:

char – однобайтное целое без знака, диапазон чисел (десятичный формат) от 0 до 255;

signed char – однобайтное целое со знаком, диапазон чисел от -128 до 127;

int – двухбайтное целое со знаком, диапазон от -32768 до 32767;

unsigned int – двухбайтное целое без знака, диапазон от 0 до 65535;

long – четырехбайтное целое со знаком, диапазон от -2147483648 до 2147483647;

unsigned long – четырехбайтное целое без знака, диапазон от 0 до 42949667295;

float – четырехбайтное число в формате с плавающей точкой.

 

Основные объекты, с которыми работает программа на языке Си – переменные и константы

Константы. Термин константа, в общем случае, относится к значению, которое не может быть изменено в ходе выполнения программы. В языке mikroC константы могут быть строковыми, символьными, целыми и вещественными (с плавающей точкой). Табл. 1 описывает форматы, соответствующие каждому виду констант.

Таблица 1

Константа Формат Примеры
символьная Символ, заключенный в апострофы ‘A’, ’!’
целая Десятичный: последовательность цифр, не начинающаяся с нуля Шестнадцатеричный: префикс 0x, за которым следуют шестнадцатеричные цифры Двоичный: префикс 0b, за которым следуют двоичные цифры   23, 69, 789   0x57, 0xA5   0b10101010
вещественная Десятичный: [цифры].[ цифры ] Экспоненциальный: [цифры]Е(е)+(-)[цифры ] 1., 2.54 5е6, 2.3Е-8, 5.67е-5
строковая Символы, заключенные в кавычки “hello”

 

Переменные. Чтобы выделить память для данных конкретного типа, нужно определить (объявить) переменную. Сначала указывается тип данных, а затем имя переменной, как указано ниже:

int i; // объявление целой двухбайтовой переменной со знаком

char counter; // объявление однобайтной беззнаковой переменной

Объявляя (определяя) переменную, можно присвоить ей начальное значение. Можно также определить несколько переменных одного типа, перечисляя их через запятую:

char counter = 0;

float num1 = 12.34, num2 = 56.78, num3;

 

Для объявления констант необходимо использовать ключевое слово const. Также рекомендуется имена констант записывать заглавными буквами. Константам следует присвоить значение при объявлении. Например:

const int DAYS_IN_WEEK = 7;

const char CLIENT = “Ivanov”;

 

Массивы и строки

 

Многие программы требуют использования многочисленных данных, которые имеют одинаковые характеристики. В таких случаях удобно поместить данные в массив, где они получат одно и то же имя. Формат объявления массива:

тип_данных имя_массива[количество_элементов];

Количество элементов в массиве называют также размерностью массива.

Например:

char array[5]; // массив из 5 целых однобайтных чисел

Доступ к элементам массива реализуется с помощью индекса – порядкового номера элемента, начинающегося с 0.

Так, в рассматриваемом примере array[0] является 1-м элементом массива, а array[4] – это последний 5-й элемент массива.

Массив хранится в памяти в последовательных ячейках следующим образом:

 

Адрес Содержимое

0x100 array[0]
0x101 array[1]
0x102 array[2]
0x103 array[3]
0x104 array[4]

 

Данные могут быть записаны в массив путем указания имени массива и индекса. Например, для записи числа 25 во второй элемент массива мы должны записать:

array[1] = 25;

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

char vrem;

…………….

vrem = array[2];

Содержимое массива может быть инициализировано во время объявления массива. Например:

int digits[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

При инициализации массива можно его объявлять без указания его размера:

int digits[ ] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

Компилятор сам определит размерность массива по количеству его элементов.

В mikroC (как и в стандартном Си) могут использоваться многомерные массивы. Многомерный массив – это множество одномерных массивов.

Двумерный массив объявляется следующим образом:

тип_данных имя_массива[размер_1] [размер_2];

Здесь размер_1 – это число строк, а размер_2 – это число столбцов.

Например:

int mas[10] [2]; // двумерный массив 10 × 2

Двумерный массив обычно называют матрицей, а одномерный – вектором.

 

В языке mikroC (как и в стандартном Си) отсутствует строковый тип данных. Вместо этого используется массив, состоящий из символов в коде ASCII. Конечным элементом такого массива является нулевой символ, обозначаемый как ‘\0’. Иногда этот символ называют нуль-терминатором. Следует отметить, что ASCII-код символа ‘\0’ равен 0x00 = 0, в отличие от кода цифры 0, который равен значению 0x30 = 48.

Строки могут быть объявлены двумя способами:

1) с указанием каждого символа, заключенного в одинарные кавычки (апострофы), и в конце строки помещается нулевой символ:

char mystring[ ] = {‘C’, ‘O’, ‘M’, ‘P’, ‘\0’};

2) путем заключения строки в двойные кавычки:

char mystring[ ] = “COMP”;

При размещении такой строки в памяти компилятор автоматически в конце добавит нулевой символ ‘\0’.

 





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


Дата добавления: 2017-02-25; Мы поможем в написании ваших работ!; просмотров: 692 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Свобода ничего не стоит, если она не включает в себя свободу ошибаться. © Махатма Ганди
==> читать все изречения...

2370 - | 2121 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.