-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpointers.cpp
58 lines (39 loc) · 1.44 KB
/
pointers.cpp
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
#include <iostream>
#include <vector>
void change(int & value){
value = 0 ;
}
void changeMemory(int * address){
*address = 1000 ;
}
int main(){
int number = 10 ;
std::cout << "number : " << number << "\n";
change(number) ; // number changed -> 0
std::cout << number << "\n";
//get memory pointer
int* number_pointer = & number ;
changeMemory(number_pointer) ; // number changed -> 1000
std::cout << number << std::endl ;
int* int_pointer = nullptr ;//null pointer
int int_value = 100 ;
int_pointer = &int_value ;
int* int_pointer2 ;
int int_value2 = 200 ;
int_pointer2 = &int_value2 ;
int_value = *int_pointer2 ; // int_pointer2 values assoign to int_value
*int_pointer2 = 1500 ; // int_pointer2 value set to 1500
std::cout << "int_value : " << int_value << std::endl ;
std::cout << "int_value2 : " << int_value2 << std::endl ;
int numbers[5] = {1,2500,3,4,5};
int* numbers_p[5] = {&numbers[0],&numbers[1],&numbers[2],&numbers[3],&numbers[4]};
for (int i=0; i<5; i++){
std::cout << "numbers[" << i << "]" << " : " << numbers_p[i] << "\n" ;
}
////////////////////////////////////////////////
const char * char_array = {"Hello World"};
//char * char_array = {'H','e','l','l','o','W','o','r','l','d'};
std::cout << char_array[10] << "\n" ; // 'd'
std::cout << char_array << "\n" ;
std::cout << *char_array ; //-> 'H'
}