Predpostavimo naslednjo deklaracijo:
const int velikost = 100;
int b[velikost], *kaz_b;
Predpostavimo, da je začetna lokacija polja 3000. Predpostavimo tudi, da naš prevajalnik shrani celo število v štirih zlogih.
Ekvivalentni stavki so:
kaz_b = b;
in
kaz_b = &b[0];
Oba stavka priredita spremenljivki kaz_b vrednost 3000.
kaz_b = b + 1;
in
kaz_b = &b[1];
Oba stavka priredita spremenljivki kaz_b vrednost 3004.
// Uporaba indeksiranega in kazalčnega zapisa s polji:
#include <iostream>
using namespace std;
int main()
{
int b[] = {10, 20, 30, 40};
int *kaz_b = b; // nastavitev kaz_b, da kaze na polje b
cout << "Polje b izpisano s:" << endl << "poljsko-indeksiranim zapisom" << endl;
for (int i = 0; i <= 3; i++)
{ cout << "b[" << i << "] = " << b[i] << endl; }
cout << endl << "kazalcnim zapisom z odmikom, kjer" << endl << "je kazalec ime polja" << endl;
for (int odmik = 0; odmik <= 3; odmik++)
{ cout << "*(b + " << odmik << ") = " << *(b + odmik) << endl; }
cout << endl << "kazalcno-indeksiranim zapisom" << endl;
for (int i = 0; i <= 3; i++)
{ cout << "kaz_b[" << i << "] = " << kaz_b[i] << endl; }
cout << endl << "kazalcnim zapisom z odmikom" << endl;
for (int odmik = 0; odmik <= 3; odmik++)
{ cout << "*(kaz_b + " << odmik << ") = " << *(kaz_b + odmik) << endl; }
system("pause");
return 0;
}