标签:clu 下标 turn span out ret ++ 数组名 style
数组是一组连续存储的同类型数据,可以通过指针的算术运算,使指针依次指向数组的各个元素,进而可以遍历数组。
定义指向数组元素的指针:
int a[10], *pa; pa=&a[0]; 或 pa=a;
经过上述定义及赋值后:
*pa就是a[0],*(pa+1)就是a[1],... ,*(pa+i)就是a[i].
a[i], *(pa+i), *(a+i), pa[i]都是等效的。
//例6-7 (1) 使用数组名和下标访问数组元素 #include<iostream> using namespace std; int main(){ int a[10] = {1,2,3,4,5,6,7,8,9,0}; for(int i = 0;i < 10; i++) cout << a[i] << " "; cout << endl; return 0; } //例6-7 (2) 使用数组名和指针运算访问数组元素 #include<iostream> using namespace std; int main(){ int a[10] = {1,2,3,4,5,6,7,8,9,0}; for(int i = 0; i < 10; i++) cout << *(a+i) << " "; cout << endl; return 0; } //例6-7 (3) 使用指针变量访问数组元素 #include<iostream> using namespace std; int main(){ int a[10] = {1,2,3,4,5,6,7,8,9,0}; for(int *p = a; p<(a+10); p++) cout << *p << " "; cout << endl; return 0; }
指针数组:数组的元素是指针型
//例6-8 利用指针数组存放矩阵 #include<iostream> using namespace std; int main(){ int line1[] = {1,0,0};//矩阵的三行 int line2[] = {0,1,0}; int line3[] = {0,0,1}; int *pLine[3] = {line1,line2,line3};//定义整型指针数组并初始化 cout << "Matrix test: " << endl; for(int i = 0;i < 3; i++){ for(int j = 0; j < 3; j++) cout << pLine[i][j] << " "; cout << endl; } return 0; }
标签:clu 下标 turn span out ret ++ 数组名 style
原文地址:http://www.cnblogs.com/leosirius/p/7989194.html