Repository navigation
Expand file tree
/
Copy path20_dynamicMemory.cpp
More file actions
131 lines (93 loc) · 2.65 KB
/
Copy path20_dynamicMemory.cpp
File metadata and controls
131 lines (93 loc) · 2.65 KB
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
// #include <iostream>
// using namespace std;
// int main(){
// int i = 5;
// int &j = i; //--- creating a reference variable
// cout<< i << endl;
// cout<< ++i <<endl;
// cout<< ++j << endl;
// cout<< j << endl;
// cout<< i;
// }
// Bad practice to an input in array
// #include <iostream>
// using namespace std;
// int main(){
// int n;
// cin >> n;
// int a[n]; // --- Bad practice as it as for the size at the time of runtime but should ask at the time of compile time ..... In this case the stack doesn't define itself the size and the program gets crashed
// the memory allocated in stack is known as Static Memory Allocation
// the memory allocated in heap is known as Dynamic Memory Allocation
// }
// Dynamically taking input of array so that array may not crash
// #include <iostream>
// using namespace std;
// int main(){
// int n;
// cin>> n;
// new int[n];
// int *arr = new int[n];
// for(int i = 0; i < n; i++){
// cin>> arr[i];
// }
// int sum = 0;
// for(int i = 0; i < n; i++){
// sum += arr[i];
// }
// cout<< sum;
// }
// dynamic memory allocation in 2D Array
// Input for a square 2D matrix
// #include <iostream>
// using namespace std;
// int main(){
// int n;
// cin>> n;
// int** arr = new int*[n];
// for(int i = 0; i < n; i++){
// arr[i] = new int[n];
// }
// for(int i = 0; i < n; i++){
// for(int j = 0; j < n; j++){
// cin>>arr[i][j];
// }
// }
// for(int i = 0; i < n; i++){
// for(int j = 0; j < n; j++){
// cout<< arr[i][j];
// }
// cout<< endl;
// }
// }
// Input for a 2D matrix with different rows and cols
// #include <iostream>
// using namespace std;
// int main(){
// int rows;
// cin>> rows;
// int cols;
// cin>>cols;
// int **arr = new int*[rows];
// for(int i = 0; i < rows; i++){
// arr[i] = new int [cols];
// }
// for(int i = 0; i < rows; i++){
// arr[i] = new int [cols];
// }
// for(int i = 0; i < rows; i++){
// for(int j = 0; j < cols; j++){
// cin>> arr[i][j];
// }
// }
// for(int i = 0; i < rows; i++){
// for(int j = 0; j < cols; j++){
// cout<< arr[i][j] <<" ";
// }
// cout<< endl;
// }
// // releasing memory
// for(int i = 0; i < rows; i++){
// delete []arr[i];
// }
// delete []arr;
// }