数组变量是某种类型的指针变量,该指针变量它指向数组的第一个索引变量.
#include
<
iostream
>
using std::cout;
using std::endl;
typedef int * IntPtr;
typedef char * CharPtr;
int main()
{
IntPtr p;
IntPtr q;
CharPtr x;
int a[ 10 ];
int b[ 10 ];
char c[ 1 ];
int index;
for (index = 0 ;index < 10 ;index ++ )
a[index] = index; // 初始化a
for (index = 0 ;index < 10 ;index ++ )
b[index] = index; // 初始化b
c[ 0 ] = ' o ' ;
p = a;
q = b;
x = c;
for (index = 0 ;index < 10 ;index ++ )
cout << p[index] << "" ;
cout << endl;
for (index = 0 ;index < 10 ;index ++ )
p[index] = p[index] + 1 ; // 对p的更改会导致数组a的改变
for (index = 0 ;index < 10 ;index ++ )
cout << a[index] << "" ;
cout << endl;
// a=b;a=q; // 非法,不能给a分配一个不同的地址
// 所有的数组变量都是用一个const修饰的变量,因此其值不能被更改
return 0 ;
}
using std::cout;
using std::endl;
typedef int * IntPtr;
typedef char * CharPtr;
int main()
{
IntPtr p;
IntPtr q;
CharPtr x;
int a[ 10 ];
int b[ 10 ];
char c[ 1 ];
int index;
for (index = 0 ;index < 10 ;index ++ )
a[index] = index; // 初始化a
for (index = 0 ;index < 10 ;index ++ )
b[index] = index; // 初始化b
c[ 0 ] = ' o ' ;
p = a;
q = b;
x = c;
for (index = 0 ;index < 10 ;index ++ )
cout << p[index] << "" ;
cout << endl;
for (index = 0 ;index < 10 ;index ++ )
p[index] = p[index] + 1 ; // 对p的更改会导致数组a的改变
for (index = 0 ;index < 10 ;index ++ )
cout << a[index] << "" ;
cout << endl;
// a=b;a=q; // 非法,不能给a分配一个不同的地址
// 所有的数组变量都是用一个const修饰的变量,因此其值不能被更改
return 0 ;
}