ВУЗ:
Составители:
Рубрика:
73
сокращенная форма операции с указателями *(w+i). Указатели также
можно индексировать, используя запись v[i] вместо *(v+i).
Пример.
const int N=10;
int w[N]=// массив
{0,10,20,30,40,50,60,70,80,90};
int *v; // указатель
v=w+5;
cout<<"\n w[0]="<<*w;
cout<<"\n w[9]="<<*(w+9);
cout<<"\n *(v+4)="<<v[4];/* указатель можно
индексировать */
Хотя указатели и массивы тесно связаны, между ними есть
существенное различие – значение указателя можно изменять, а имя массива
является константой.
Пример. Указателю b присвоено значение указателя a. Однако,
операция присваивания a=p будет воспринята компилятором как ошибка,
поскольку, в отличие от b указатель a является именем массива.
const int N=5;
int *b;
b = new int [N];
int a[N]={10,20,30,40,50};
for(int i=0; i<N; i++) b[i] = i;
cout<<"\n a: ";
for(int i=0; i<N; i++) cout<<a[i]<<'\t';
cout<<"\n b: ";
for(int i=0; i<N; i++) cout<<b[i]<<'\t';
b=a; // так можно
cout<<"\n *(b+2)="<<b[2];
/* a=p; // в так нельзя */
сокращенная форма операции с указателями *(w+i). Указатели также
можно индексировать, используя запись v[i] вместо *(v+i).
Пример.
const int N=10;
int w[N]=// массив
{0,10,20,30,40,50,60,70,80,90};
int *v; // указатель
v=w+5;
cout<<"\n w[0]="<<*w;
cout<<"\n w[9]="<<*(w+9);
cout<<"\n *(v+4)="<Страницы
- « первая
- ‹ предыдущая
- …
- 71
- 72
- 73
- 74
- 75
- …
- следующая ›
- последняя »
