Вказівники та одновимірні масиви

Важливою властивістю опису будь-якого масиву у C є те, що ім’я масиву є вказівником-константою, значення якого дорівнює адресі початку масиву (першого байта першого елементу масиву). Нехай маємо опис:

int a[10]. *pa = &a[0] /*або pa = a */;

Звернення до елементів одновимірного масиву

Тоді вказівники:

pa + 1 та a + 1 будуть вказувати на елемент a[1];

pa + i та a + i будуть вказувати на елемент a[i];

До елемента a[1] можна звернутися так: a[1], *(pa + 1), *(a + 1);

А до елемента a[i]: a[i], *(pa + i), *(a + i).

Незважаючи на схожість застосування pa та a у виразах над вказівниками, між ними є суттєва відмінність: pa – це змінна, a – це константа. Звідси випливає, що можна написати

pa = a;

pa++;

Але неможна написати так:

a = pa;

a++;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: