[ 흥달쌤 유투브 강의 정리 ]
https://www.youtube.com/watch?v=wg4j5dtAP1E
(29강) 2차원 배열과 포인터 (1)
2차원 배열 => 행과 열로 구성.
int a [3] [2] => 3행 2열로 구성.
2차원 배열에서 *a는 a [0]의 주소값, **a는 a[0][0] 인 1.
=> x = 5, y = 9
int [ ] [3] => 행값이 없고 열값만 있음, 3개씩 끊기.
Data ------> Data[0] = { 1 , 3 , 4 }
100 100 100 101 102
Data[1] = { 5 , 2 , 9 }
p = 103 103 104 105
Data[2] = { 6 , 8 , 7 }
106 106 107 108
(30강) 2차원 배열과 포인터 (2)
=> sum1 = 5, sum2 = 11
darr ------> darr[0] = { 1 , 2 , 3 }
100 100 100 101 102
darr [1] = { 4 , 5 , 6 }
103 103 104 105
darr [2] = { 7 , 8 , 9 }
106 106 107 108
sum1 = 2 + 3 = 5
sum2 = 4 + 7 = 11
(31강) 포인터 배열 (1)
* 포인터 배열
배열의 요소가 포인터(메모리주소)로 이루어진 것.
=> a는 주소값을 가지는 배열.
주소값을 출력하면 주소값이 가르키는 문자열을 끝(null)까지 연속으로 출력.
=> str은 문자열의 주소값을 가지는 배열.
주소값을 출력하면 주소값이 가르키는 문자열의 끝(null)까지 연속으로 출력.
=> student 는 문자열 배열의 주소값을 가지는 배열.
student에는 각 문자열의 주소값인 20 | 30 | 40 이 들어간다.
=> bbb
c ------> { 20 , 30 , 40 } : 주소값을 가지는 배열
100 100 101 102
주소값 20 ---> a a a
주소값 30 ---> b b b
주소값 40 ---> c c c
(32강) 포인터 배열 (2)
=> morning
u
array1 ------> { 20 , 30 } : 주소값을 가지는 배열
100 100 101
주소값 20 ---> G o o d v m o r n i n g
주소값 30 ---> C v l a n g u a g e
array1[0] + 5 => 25번지의 값부터 (문자열 s)출력 = morning
*( array1[1] + 6 ) => 36번지의 값(문자 c)출력 = u
(33강) 포인터 배열 (3)
=> 1
-10
14
a ------> a[0] = { -3 , 14 , 5 }
100 100 100 101 102
a[1] = { 1 , -10 , 8 }
103 103 104 105
b ------> { a[0] , a[1] } => { 100 , 103 } : 주소값을 가지는 배열
200 p
(34강) 포인터 배열 (4)
=> 37
arr ------> { 30 , 40 , 50 } : 주소값을 가지는 배열.
100 100 101 102
주소값 30 ---> 12
주소값 40 ---> 24
주소값 50 ---> 36
*arr[1] => 40번지의 값 = 24
**arr + 1 => (100번지가 가르키는 주소값)이 가르키는 값 + 1 = 13
주소값 30
'정보처리기사 > c언어강의' 카테고리의 다른 글
[C언어(강의)] 35강 (구조체) (0) | 2024.07.17 |
---|---|
[C언어(강의)] 25강~28강 (배열과 포인터) (0) | 2024.06.22 |
[C언어(강의)] 21강~24강 (배열, 포인터, scanf) (0) | 2024.06.22 |
[C언어(강의)] 19강~20강 (for, continue, break, 다중for문) (0) | 2024.06.22 |
[C언어(강의)] 14강~18강 (if문, switch문, 반복문, for문, while문, do~while문) (0) | 2024.06.02 |