C++ primer(第五版) 3.6节练习

//3.43-3.42
int main()
{
    //类型别名
	using int_array = int [3][3];
	using i = int;

	int_array arr = { 1,2,3,4,5,6,7,8,9 };

	cout << "version 1" << endl;
	//version 1
	for (i(&row)[3] : arr) {
		for (i col : row) {
			cout << col << ",";
		}
		cout << endl;
	}

	cout << "version 2" << endl;
	//version2
	for (i row = 0; row < 3; row++) {
		for (i col = 0; col < 3; col ++) {
			cout << arr[row][col] <<",";
		}
		cout << endl;
	}

	cout << "version 3" << endl;
	//version3
	for (i(*row)[3] = arr; row != end(arr); row++) {
		//ERROR!
		//for (int(*col)[3] = row; col != end(row);col++) {
		//SUCCESS!
		for (i *col = *row; col != end(*row); *col++) {
			cout << *col << ",";
		}
		cout << endl;
	}
	system("pause");
	return 0;
}
//3.45
int main()
{
	int arr[3][3] = { 1,2,3,4,5,6,7,8,9 };

	cout << "version 1" << endl;
	//version 1
	for (auto &row : arr) {
		for (auto col : row) {
			cout << col << ",";
		}
		cout << endl;
	}

	cout << "version 2" << endl;
	//version2
	for (auto row = 0; row < 3; row++) {
		for (auto col = 0; col < 3; col ++) {
			cout << arr[row][col] <<",";
		}
		cout << endl;
	}

	cout << "version 3" << endl;
	//version3
	for (auto (*row)[3] = arr; row != end(arr); row++) {
		for (auto col = *row; col != end(*row); *col++) {
			cout << *col << ",";
		}
		cout << endl;
	}
	system("pause");
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值