Указатели C ++ на структуру

В этой статье вы найдете соответствующие примеры, которые помогут вам работать с указателями для доступа к данным внутри структуры.

Переменная-указатель может быть создана не только для собственных типов, таких как ( int, floatи doubleт. Д.), Но они также могут быть созданы для определенных пользователем типов, таких как структура.

Если вы не знаете, что такое указатели, посетите указатели C ++.

Вот как можно создать указатель для структур:

 #include using namespace std; struct temp ( int i; float f; ); int main() ( temp *ptr; return 0; )

Эта программа создает указатель ptr структуры типа temp.

Пример: указатели на структуру

 #include using namespace std; struct Distance ( int feet; float inch; ); int main() ( Distance *ptr, d; ptr = &d; cout <> (*ptr).feet; cout <> (*ptr).inch; cout << "Displaying information." << endl; cout << "Distance = " << (*ptr).feet << " feet " << (*ptr).inch << " inches"; return 0; )

Вывод

Введите футы: 4 Введите дюйм: 3,5 Отображение информации. Расстояние = 4 фута 3,5 дюйма

В этой программе определена указательная переменная ptr и нормальная переменная d структуры типа Distance.

Адрес переменной d сохраняется в переменной-указателе, то есть ptr указывает на переменную d. Затем доступ к функции-члену переменной d осуществляется с помощью указателя.

Примечание: поскольку указатель ptr указывает на переменную d в этой программе (*ptr).inchи d.inchявляется точно такой же ячейкой. Аналогично, (*ptr).feetи d.feetточно такая же ячейка.

Синтаксис для доступа к функции-члену с использованием указателя уродлив, и есть альтернативная нотация ->, которая более распространена.

 ptr-> feet совпадает с (* ptr) .feet ptr-> inch совпадает с (* ptr) .inch

Интересные статьи...