CPP-101: Указатели и масиви

Указатели и масиви

Указателите и масивите са тясно свързани. Името на масива може да се използва като указател, сочещ към първият елемент на масива. Нека разгледаме следния фрагмент:

int v[]={1,2,3,4};
int* p=v;
int* begin=&v[0];
int* end=&v[4];

В ред 1 е дефиниран масивът v, който има четири елемента. Името на масива v може да се разглежда като указател, сочещ началото (първия елемент) на масива, т.е. дефинирания в ред 2 указател p сочи към първия елемент на масива v. Адресът на първия елемент на масива може да бъде получен и като се използва унарния оператор & по следния начин – &v[0] (виж ред 3).

Съгласно дефиницията на езика указателят end дефиниран в ред 4, насочен с едно след последният елемент на масива, има добре дефинирана стойност. С други думи такъв указател може да се използва при сравнение с други указатели. От друга страна стойността, записана на адреса към който е насочен указателят end, не е дефинирана. Прилагането на оператора * към указателят end води до получаване на произволна стойност.

Публикувано в CPP-101, ООП с етикети , , . Постоянна връзка.

Един коментар по CPP-101: Указатели и масиви

  1. Pingback: CPP-101: Кратък обзор на езика за програмиране C++ | Записки по програмиране

Коментарите са затворени.