summaryrefslogtreecommitdiff
path: root/3p44.cpp
blob: da39f25892fc86e0b0fecbfa8e8bf19a368767ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <vector>
#include <iterator>

/*
 *
 * 3.44
 *
 *
 */

int main () {

	int ia[3][4] = {
		{1,2,3,4},
		{5,6,7,8},
		{9,10,11,12}
	};

	using int_arr4 = int[4]; // I'll be honest i dont like this whole 'using' and 'typedef'
	                         // It just feels like obfuscating the code when you really don't need to.
	for (int_arr4 &a : ia) { // A reference to an array of 4 int's
		// I'll be honest i would not have figured that out myself, i did search the internet for answers.
		for (int aa : a) {
			std::cout << aa << " ";
		}
		
		std::cout << std::endl;
	}

	std::cout << std::endl;
	for(size_t i = 0 ; i != 3 ; ++i) {
		for(size_t j = 0 ; j != 4 ; ++j) {
			std::cout << ia[i][j] << " ";
		}
		
		std::cout << std::endl;
	}

	std::cout << std::endl;
	for(int_arr4 *p = std::begin(ia) ; p != std::end(ia) ; ++p) {
		for(int *pp = std::begin(*p) ; pp != std::end(*p) ; ++pp) {
			std::cout << *pp << " ";
		}

		std::cout << std::endl;
	}

	return 0;
}