|
||||
|
31. РазыменованиеОсновной операцией над указателем является разыменование, т. е. ссылка на объект, на который указывает указатель. Эту операцию также именуют косвенным обращением. Например: char c1 = 'a'; char* p = &c1 // в p хранится адрес c1 char c2 = *p; // c2 = 'a' Над указателями можно осуществлять определенные арифметические действия. К примеру, функция, подсчитывающая число символов в строке (не считая завершающего 0): int strlen(char* p) { int i = 0; while (*p++) i++; return i; } Два структурных типа различны, даже когда они имеют одинаковые члены. К примеру: struct s1 {int a;}; struct s2 {int a;}; являются двумя разными типами, поэтому s1 x; s2 y = x; // ошибка: несоответствие типов. Структурные типы отличаются и от основных типов, поэтому s1 x; int i = x; // ошибка: несоответствие типов Но существует механизм описания нового имени для типа, который не требует введения нового типа. Описание с префиксом typedef вводит не новую переменную данного типа, а новое имя этого типа. К примеру: typedef char* Pchar; Pchar p1,p2; char* p3 = p1; |
|
||
Главная | В избранное | Наш E-MAIL | Добавить материал | Нашёл ошибку | Другие сайты | Наверх |
||||
|