C++学习篇:指针与二维数组

#include <iostream>
#include<vector>
#include<string>
using namespace std;

//指针与二维数组的访问

int main()
{
	int v[2][3] = { {1,2,3},{4, 5, 6} };
	int(*a)[3] = v;

	cout << *a << endl;	        //输出1的地址
	cout << (*a + 1) << endl;	//输出2的地址
	cout << (*a + 2) << endl;	//输出3的地址
	cout << *(*a + 1) << endl;	//输出2
	cout << *(*a + 2) << endl;	//输出3
	cout << *(a + 1) << endl;	//输出4的地址
	cout << **(a + 1) << endl;	//输出4

	int ia[3][4] = { {1,2,3,4},{5, 6, 7, 8}, {9, 10, 11, 12} };
	int(*p)[4] = ia;
	p = &ia[2];
	for (auto p = ia;p != ia + 3;++p)
		for (auto q = *p;q != *p + 4;++q)
			cout << *q << ' ';
	cout << endl;
}

猜你喜欢

转载自blog.csdn.net/qq_42373896/article/details/121050865