Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Можно получить адрес, по которому переменная располагается в памяти

Перед использованием указателя его необходимо описать в программе.

Позволяет получить доступ к данным, которые хранятся по адресу указатель.

Указатель

Операция

Операция sizeof возвращает размер в байтах указанного в ней выражения или типа данных.

Префиксный и постфиксные операции различаются приоритетом. Префиксные операции имеют самый большой приоритет и выполняются до любой другой операции. Постфиксные операции имеют самый маленький приоритет и выполняются после всех остальных операции.

Пример:

float a, b=2, c=1, d=1;a = b + c++;cout << "\n a=" << a <<"\t c= "<< c; /* Даст результат a=3 c=2.

Используется постфиксный инкремент. Сначала произойдет сложение b и c, результат запишется в а, затем с будет увеличена на 1 */

a = ++d + b; cout << "\n a=" << a <<"\t d= "<< d; /* Даст результат a=4 d=2.

Используется префиксный инкремент. Сначала d будет увеличена на 1 (и станет равной 2), затем произойдет сложение d и b, результат запишется в а */

1.3.7. Операция sizeof

Имеет формат:

sizeof выражение

или

sizeof (тип данных)

 

 

Пример:

float x=1;

cout <<"\nРазмер типа float в байтах=\t" << sizeof (float)cout <<"\nРазмер переменной Х в байтах=\t" << sizeof x Результат: Размер типа float в байтах= 4Размер переменной Х в байтах= 4

1.3.8. Операция "запятая" (,)

Дополнительная операция (,) не работает непосредственно с данными, а приводит к вычислению выражения слева направо. Эта операция позволяет использовать в одной строке несколько выражений, разделенных запятой.

Пример 1:

main(){ int i = 10, j = 25;}

Результатом выполнения является инициализация двух целочисленных переменных: переменная i получает значение 10, а затем переменная j получат значение 20.

Пример 2:

i = 10;j=(i=12,i+8);

Результат выполнения: j=20. Сначала i получает значение 10, затем использование операции "запятая" приведет к тому, что i получит значение 12, а затем значение i+8, т.е. 12+8=20. Результат будет присвоен j.

1.3.9. Условная операция (?:)

Эта операция тернарная, то есть имеет три операнда.Формат: (условие)? (выражение1): (выражение2)

 

Если условие истинно, то выполняется выражение1, а если ложно, то выражение2.

Пример:

(а>b)?(ans =10):(ans=25);

или

ans=(a>b)?(10):(25);

Если а>b, то переменная ans получается значение 10, иначе - значение 0.25

1.3.10. Указатель. Определение адреса переменной

С++ позволяет напрямую работать с памятью. С любой переменной можно работать, указывая ее имя или адрес. Адреса переменных называются указателями, при описании указатель обозначается *.

Пример:

int * k; // k - указатель на переменную целого типа

 

Пример:

int *c; // с - указатель на переменную типа intfloat *d; // d - указатель на переменную типа float

 

<== предыдущая лекция | следующая лекция ==>
Замечание 2 | Замечание. Определяет адрес переменной по ее имени, а также позволяет обратиться к памяти по значению указателя
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 471; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.