//
// Are pointers and arrays "equivalent" ?
//

// a.cpp

int t[] = { 1, 2, 3, 4, 5};

int main()
{
    cout << t[2] << endl;   // ok

    int *p = t;
    cout << p[2] << endl;   // ok

    g(p);
    g(t);

    return 0;
}

// b.cpp

extern int *t;

int g( int *par)
{
    cout << par[2] << endl;     // ok
    cout <<   t[2] << endl;     // runtime error
}