Читайте также:
|
|
Типы данных
Назначение типа | Нижняя граница диапазона | Верхняя граница диапазона | Точность | Размер в байтах |
bool | false | true | Нет | |
char | -128 | Нет | ||
Short | -32 768 | 32 767 | Нет | |
int | -2 147 483 648 | 2 147 483 647 | Нет | |
Long | -2 147 483 648 | 2 147 483 647 | Нет | |
Float | 3.4*10^(-38) | 3.4*10^(38) | ||
double | 1.7*10^(-308) | 1.7*10^(308) |
Если значение переменной alpha меньше значения переменной beta, то переменной bool будет присвоено значение true, а в противном случае – false.
Беззнаковые типы данных
Назначение типа | Нижняя граница диапазона | Верхняя граница диапазона | Размер в байтах |
Unsigned char | |||
Unsigned Short | 65 535 | ||
Unsigned int | 4 294 967 295 | ||
Unsigned Long | 4 294 967 295 |
Преобразование типов
Рассмотрим программу:
#include <iostream>
using namespace std;
int main()
{
int i = 7;
float f = 155.5F;
double d = i * f;
cout << "Вес равен " << d << endl;
return 0;
}
Здесь переменная типа int умножается на переменную типа float, а результат присваивается переменной типа double.
Неявное преобразование типов
Арифметические операции действуют следующим образом: если их операнды имеют различные типы, то операнд с более «низким» типом будет преобразован к более «высокому» типу. Так в этой прог-е тип int переменной i был преобразован в float. Результат имеющий тип float, затем преобразовался к типу double. (long double – double – float – long – int – short – char)
Явные преобразования типов
Явные преобразования совершаются самим программистом. Это преобразование необходимо в тех случаях, когда компилятор не может безошибочно преобразовать типы автоматически. Преобразование типа int в char:
i = static_cast<char>(c);
Приведение типов следует использовать только в случае полной уверенности в его необходимости и понимания, для чего оно делается.
3) Операция отношения. Логические операции. Приоритеты операций в языке С++.
Операции отношения
Операции отношения сравнивают между собой два значения. Значения могут быть разных типов. Результат сравнения является значение истина или ложь.
операция | название |
> | Больше |
< | Меньше |
== | Равно |
!= | Не равно |
>= | Больше или равно |
<= | Меньше или равно |
Результат сравнения выражений должен быть тип bool. Если выражение true, то выводится 1, а если false – 0.
Пример:
a = 44; // оператор присваивания
b = 12; // оператор присваивания
(a == b) // ложь
(b <= 12) // истина
(a > b) // истина
(a >= 44) // истина
(b!= 12) // ложь
(7 < d) // истина
(0) // ложь (по определению)
(44) // истина (потому что не ложь)
Логические операции
Логические операции позволяют производить действия над двумя значениями – истина и ложь.
операция | название |
&& | Логическое И |
|| | Логическое ИЛИ |
! | Логическое НЕ |
Рассмотрим программу:
include <iostream>
using namespace std;
int main()
{
int i, o;
cout << “Введите Ваши оценки по информатике и ООП: ”;
cin >> i >> o;
if ((i == 4 || i == 5) && (o == 4 || o == 5))
{ cout << “Ты молодец!” << endl; }
else
{ cout << “Все нормально!” << endl; }
return 0;
}
Операции логического И или ИЛИ связывают пару относительных выражений(выражения, содержащие операции отношения). (операции отношения имеют больший приоритет)
Операция логического НЕ является унарной, т.е. имеет только один операнд. Действие операции! заключается в том, что она меняет значение своего операнда на противоположное. Пр., (х == 7) является истинным, если значение х = 7, а!(х == 7) является истинным для всех х, кроме 7(х!= 7).
Приоритеты операций С++
Чтобы повысить приоритет операции, можно заключить ее в круглые скобки.
Дата добавления: 2015-08-17; просмотров: 75 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Структура программы. Директивы. Переменные и константы. | | | Циклы и ветвления |