adfun.ru
| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
вольные или строковые константы,перед которым находится обратный
слеш (\). В таблице 11.3 приведен список всех разрешенных после-
довательностей, а те что отмечены звездочкой (*) являются допол-
нением к списку, приведенному в K&R.
- 243,244 -
Таблица 11.3. Escape последовательности Турбо Си
-----------------------------------------------------------------
Последовательность Значение Символ Что делает
-----------------------------------------------------------------
* \a 0x07 BEL Звуковой сигнал
\b 0x08 BS <-Ѕ (Забой)
\f 0x0C FF Перевод страницы
\n 0x0A LF Перевод строки
\r 0x0D CR Возврат каретки
\t 0x09 HT Горизонтальная табуляция
* \v 0x0B VT Вертикальная табуляция
\\ 0x5c \ Обратный слеш
\' 0x2c ' Апостроф
* \" 0x22 " Двойная кавычка
* \? 0x3F ? Вопросительный знак
\DDD любой DDD = от 1 до 3
восьмиричных цифр
* \xHHH 0xHHH любой HHH = от 1 до 3
шестнадцатиричнх цифр
----------------------------------------------------------------
* Расширение ANSI к K&R
Примечание: поскольку Турбо Си допускает двусимвольные конс-
танты, может возникнуть двусмысленность, если восьмиричная escape
последовательность из менее чем трех цифр предшествует цифре. В
таких случаях, Турбо Си будет ожидать, что следующий символ при-
надлежит escape последовательности, кроме случая, когда символ не
допускается для данного типа чисел. Например, поскольку цифры 8 и
9 не восьмиричные и не разрешены, то константа \258 будет интерп-
ретирована как двухсимвольная константа, состоящая из символов
\25 и 8.
Константы с плавающей точкой (K&R 2.4.4)
----------------------------------------
Все константы с плавающей точкой, определенные как тип
double, описаны в K&R. Однако, вы можете сделать константу с пла-
вающей точкой и типа float, добавив к ней суффикс F.
- 245,246 -
Строки (K&R 2.5)
-----------------------------------------------------------------
В соответствии с K&R строковые константы состоят обязательно
из одной строки, имеющей конструкцию: двойные кавычки, текст,
двойные кавычки ("как здесь"). Для продолжения символьной после-
довательности на новой строке вы должны использовать обратный
слеш.
В Турбо Си разрешается использовать многостроковые элементы
в строковых константах, которые могут потребоваться для конкате-
нации (соединения) строк. Так, например, вы можете сделать следу-
ющее:
main()
{
char *p;
p = "Это пример того, как Турбо Си"
" будет автоматически\nвыполнять конкатенацию"
" ваших очень длинных строк,\nделая наглядным"
" общий вид программ."
puts(p);
}
Вот результат работы программы:
Это пример того, как Турбо Си будет автоматически
выполнять конкатенацию ваших очень длинных строк,
делая наглядным общий вид программ.
- 247,248 -
Зависимость от аппаратных средств (K&R 2.6)
-----------------------------------------------------------------
В K&R признается, что размер и числовой диапазон основных
типов данных (со всеми вариациями) очень зависит от конкретной
архитектуры компьютера. Это справедливо для Турбо Си и для боль-
шинства других компиляторов Си. В таблице 11.4 приведен список
размеров и соответствующих диапазонов для различных типов данных
в Турбо Си.
Таблица 11.4. Типы данных, размеры и диапазоны в Турбо Си
-----------------------------------------------------------------
Тип Размер (в битах) Диапазон
-----------------------------------------------------------------
unsigned char 8 0 - 255
char 8 -128 - 127
enum 16 -32768 - 32767
unsigned short 16 0 - 65535
short 16 -32768 - 32767
unsigned int 16 0 - 65535
int 16 -32768 - 32767
unsigned long 32 0 - 4294967295
long 32 -2147483648 - 2147483647
float 32 3.4E-38 - 3.4E+38
double 64 1.7E-308 - 1.7E+308
long double 80 3.4E-4932 - 1.1E+4932
pointer 16 (указатели near,_cs,_ds,_es,_ss)
pointer 32 (указатели far, huge)
- 249,250 -
Преобразования (K&R 6)
-----------------------------------------------------------------
Турбо Си поддерживает стандартные механизмы по автоматичес-
кому преобразованию одного типа данных в другой. Следующие разде-
лы поясняют дополнения к K&R или раскрывают специфические тонкос-
ти данной реализации.
Char, int и enum (K&R 6.1)
-----------------------------------------------------------------
Преобразование символьной константы к целому типу имеет ре-
зультатом 16-битное значение, поскольку и одно, и двусимвольные
константы представляются 16-битным значением (см. K&R 2.4.3.).
Результат преобразования символьного объекта (такого как перемен-
ная) к целочисленному объекту автоматически получает знаковое
расширение, если вы не сделали по умолчанию тип char беззнаковым,
используя при компиляции опцию -k. Объекты типа signed char при
преобразовании их в int всегда используют знаковое расширение;
объекты типа unsigned char всегда устанавливают старший байт в
ноль.
Значения типа enum преобразуются в int без модификации; ана-
логично значения, имеющие тип int, могут преобразовываться в зна-
чения перечислимого типа enum, а символы преобразуются в int зна-
чения и обратно.
Указатели (K&R 6.4)
-----------------------------------------------------------------
В Турбо Си различные указатели вашей программы, могут быть
различных размеров, в зависимости от используемой модели памяти
или используемого модификатора типа указатель. Например, когда вы
компилируете программу, используя конкретную модель памяти, адре-
суемые модификаторы (near, far, huge, _cs, _ds, _es, _ss) в вашем
исходном тексте могут изменять размер указателя, заданный данной
моделью памяти.
Указатель должен быть объявлен как указатель на некоторый
конкретный тип, даже если данный тип - void (который в действи-
- 251,252 -
|
adfun.ru
|
|
|
|