M. УЭИТ - Язык Си - руководство для начинающих
- Название:Язык Си - руководство для начинающих
- Автор:
- Жанр:
- Издательство:Мир
- Год:1988
- Город:Москва
- ISBN:5-03-001309-1 /русск./
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
M. УЭИТ - Язык Си - руководство для начинающих краткое содержание
Язык Си - руководство для начинающих - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
rabbits *= 1.6;то же самое, что rabbits = rabbits * 1.6;
III. Операции отношения
Каждая из этих операций сравнивает значение слева со значением справа. Оператор отношения, состоящий из операции и двух ее операндов, имеет значение 1, если выражение истинно, и значение 0, если выражение ложно.
< | меньше |
<= | меньше или равно |
== | равно |
>= | больше или равно |
> | больше |
!= | не равно |
IV. Логические операции
Обычно логические операции "считают" условные выражения операндами. Операция !имеет один операнд, расположенный справа. Остальные операции имеют два операнда: один слева и один справа.
&& | Логическое И: результат операции имеет значение "истина", если оба операнда истинны, и "ложь" в противном случае. |
|| | Логическое ИЛИ: результат операции имеет значение "истина", если один или оба операнда истинны, и "ложь" в противном случае. |
! | Логическое НЕ: результат имеет значение "истина", если операнд имеет значение "ложь", и наоборот. |
V. Операции над указателями
& | Операция получения адреса: выдаст адрес переменной, имя которой стоит за обозначением операции: &nurseявляется адресом переменной nurse |
* | Косвенная адресация: выдает значение, записанное по адресу, на который ссылается указатель: |
nurse = 22;
ptr = &nurse; /* указатель на nurse */
val = *ptr
В результате работы этих операторов переменной valприсваивается значение 22.
VI. Операции над структурами и объединениями
. | Операция принадлежности (точка) используется совместно с именем структуры (или объединения) для задания элемента этой структуры (иди объединения). Если name является именем структуры, а member- элементом, указанным в структурном шаблоне, то name.memberопределяет этот элемент структуры. Операцию принадлежности можно аналогичным образом применять и к объединениям. |
Пример:
struct {
int code;
float cost;
} item;
item.code = 1265;
Выполняется присваивание значения элементу code структуры item.
-> | Косвенная адресация (определение принадлежности) элемента используется совместно с указателем на структуру (или объединение) для идентификации того или иного элемента этих структур (или объединения). Предположим, что ptrstrявляется указателем на структуру, a member- элементом, указанным в структурном шаблоне. Тогда ptrstr -> memberопределяет, что это элемент структуры, на которую ссылается указатель. Операцию косвенной адресации элемента можно применять аналогичным образом и к объединениям. |
Пример:
struct {
int code;
float cost;
} item, *ptrst;
ptrst = &item;
ptrst-> code = 3451;
Эти операторы присваивают значение элементу codeструктуры item. Следующие три выражения эквивалентны:
ptrst -> code
item.code
(*ptrst).code
VII. Дополнительные операции
sizeof | Выдает размер (в байтах) операнда, стоящего справа. Операндом может быть обозначение типа, заключенное в скобки, как, например, в sizeof(float), либо имя конкретной переменной или определенного массива и т. д., как, например, в sizeof foo. |
(type) | Операция приведения типа: превращает следующее за ней значение в тип, определенный ключевым словом (или словами), заключенным в скобки. Например, (float)9 превращает целое 9 в число с плавающей точкой 9.0. Операция "запятая" связывает два выражения в одно и гарантирует, что левое выражение будет вычислено первым. Типичным примером использования является включение дополнительной информации в управляющее выражение цикла for:for(step = 2, fargo = 0; fargo < 1000; step *= 2) fargo + = step; |
?: | Операция условия имеет три операнда, каждый из которых является выражением. Они расположены следующим образом: выражение1 ? выражение2 : выражение3 . Значение всего выражения равно значению выражения2 , если выражение1 истинно, и значению выражения3 в противном случае. |
Примеры:
(5 > 3) ? 1 : 2 имеет значение 1
(3 > 5) ? 1 : 2 имеет значение 2
(a > b) ? а : b имеет значение большего а и b
ПРИЛОЖЕНИЕ Г. ТИПЫ ДАННЫХ И КЛАССЫ ПАМЯТИ
Основные типы данных
Ключевые слова: Основные типы данных определяются с помощью следующих семи ключевых слов: int, long, short, unsigned, char, float, double
Целые со знаком: Могут иметь положительные и отрицательные значения.
int: основной тип целых чисел для конкретной системы.
longили long int: могут иметь целое как минимум такого же размера, как самое большое intи, возможно, больше.
shortили short int: самое большое целое типа shortне больше самого большого int, а возможно, и меньше. Обычно longдолжно быть больше short, a intдолжно быть таким же, как одно из них. Например, версия языка Си Lattice С для компьютера IBM PC имеет 16-разрядные целые типа shortи intи 32-разрядные long. Все это зависит от используемой системы.
Целые без знака: имеют только нулевые и положительные значения. Они не могут быть больше самого большого возможного положительного числа.
Ключевое слово: unsignedиспользуется перед обозначением типа: unsigned int, unsigned long, unsigned short.
Отдельно стоящее unsignedобозначает то же самое, что и unsigned int.
Символы: это типографские знаки, такие, как А, &и +.
Обычно каждый из них занимает в памяти только один байт.
char: ключевое слово для этого типа.
Числа с плавающей точкой: они могут иметь положительные и отрицательные значения.
float: основной (для используемой системы) размер чисел с плавающей точкой.
doubleили long float: больший (возможно) элемент для размещения чисел с плавающей точкой. С его помощью в принципе можно использовать больше значащих цифр и, возможно, больший порядок.
Как описать простую переменную:
1. Выберите необходимый тип.
2. Выберите имя для переменной.
3. Используйте следующий формат для oператора описания:
обизначение-типа имя-переменной ;
Обозначение-типа состоит из одного или более ключевых слов типа. Вот несколько примеров:
int erest;unsigned short cash;
4. Можно описать более чем одну переменную одного и того же типа, разделив имена переменных запятыми:
char ch, init, ans;
5. Можно инициализировать ту или иную переменную в операторе описания:
Читать дальшеИнтервал:
Закладка: