指针与数组
数组名是一个指针,它指向数组第一个元素的地址,所以可以用数组名遍历数组,也可以用指针遍历数组,注意的是数组名是一个静态指针不能进行++,--,可以进行+i,-i运算,指针则可以进行上述两种运算,因为它的值是保存地址的一个变量所以可以改变。
#include<bits/stdc++.h> using namespace std; int main() { int a[10],*pa; int n; cin>>n; for (int i=0;i<n;i++) { cin>>a[i]; } pa=a; for (int i=0;i<n;i++) { cout<<(*pa++)<<" "; } cout<<endl; pa=a; for (int i=0;i<n;i++) { cout<<(*(pa+i))<<" "; } cout<<endl; for (int i=0;i<n;i++) { cout<<(*(a+i))<<" ";//cout<<(*a++)<<" ";有错误,因为a的值是固定的,不能改变。 } }