Фраза "Структурная переменная описывается с помощью переменной структурного типа" на мой Взгляд является тафтология. Из нее сложно понять суть утверждения. Хотелось бы полке понятного описания. |
Данные, символьные строки, директива #define
Строковые константы. Строковая константа представляется последовательностью символов кода ASCII, заключенной в кавычки.
Например,
"Это строковая константа"
В конце каждой строки компилятор помещает нулевой символ '\0', отмечающий конец данной строки. Каждая строковая константа, даже если она идентична другой строковой константе, сохраняется в отдельном месте памяти. Если необходимо ввести в строку символ кавычек ( " ), то перед ними надо поставить символ обратной косой ( \ ). В строку могут быть введены любые специальные символьные константы, перед которыми стоит символ \. Символ \ и следующий за ним символ новой строки игнорируется.
Перечисляемые константы. Имена, указанные в описании перечисляемых констант, трактуются как целые числа (см. описание перечисления).
Описание данных типа float и double. Числа с плавающей точкой в языке Си описываются типом float. Числа с плавающей точкой аналогичны числам в обычной алгебраической записи, используемой при работе с очень большими или малыми числами.
Пример алгебраической записи чисел с плавающей точкой:
Число | Алгебраическая запись | Запись для ввода в машину |
---|---|---|
5000 | = 5.0 * 103 | = 5.0e+3 |
0.000077 | = 7.7 * 10-5 | = 7.7e-5 |
Обычно для размещения в памяти числа с плавающей точкой отводится 32 бита - 8 бит для представления порядка и знака и 24 бита - для мантиссы, т.е. коэффициента при степени десяти. Для представления данных типа double (вычисление с двойной точностью) используется удвоенное число битов. Другой способ определения данных типа double заключается в использовании ключевых слов long float.
Переменные с плавающей точкой описываются и инициализируются таким же образом, что и переменные целого типа.
Например,
float dog, cat, bigword=5.77e+34;
Константы с плавающей точкой. В языке Си имеется несколько возможностей записи констант с плавающей точкой. Наиболее общая форма записи константы - это последовательность десятичных цифр со знаком, включающим в себя десятичную точку, затем символ e или Е и показатель степени по основанию 10 со знаком. Знак ( + ) можно не писать. Ниже приведено несколько правильно записанных констант с плавающей точкой:
1.1e+12 3.14159
Символьные строки
Символьная строка - это последовательность символов, возможно пустая ( "" ). Рассмотрим пример:
"Большой спрос на образование в области информационных дисциплин объясняется не только популярностью компьютеров в современном обществе, но и реальной пользой от их применения."
Кавычки не являются частью строки. Они вводятся только для того, чтобы отметить ее начало и конец. В языке Си нет специального типа, который можно было бы использовать для описания строк. Вместо этого строки представляются в виде "набора" элементов типа char. Это означает, что символы в строке можно представить расположенными в соседних ячейках памяти - по одному символу в ячейке. Символ \0 в языке Си используется для того, чтобы отмечать конец строки. Нуль-символ не выводится на печать и в таблице кода ASCII (American Standard Code for Information Interchange) имеет номер 0. Наличие нуль-символа означает, что количество ячеек массива символов должно быть на одну больше, чем число символов строки. Массив можно представить как совокупность нескольких ячеек памяти, объединенных в одну строку. Массив - это упорядоченная последовательность элементов данных одного типа. В нашем примере мы создали массив из 177 ячеек памяти, в каждую из которых можно поместить один символ типа char. Это можно сделать с помощью оператора описания:
char String[177];
Квадратные скобки указывают, что переменная String - массив из 177 элементов, а char задает тип каждого элемента. Длину строки в символах (без завершающего символа) определяет функция strlen( ). Обращение к ней в нашем примере выглядит так:
strlen(String);