목차
TIL
- C언어 포인터 / 박은종 쌤의 포인터 강의 1~2
- C언어 공부법과 책 추천 (C표준)
TIL
어제 서울에서의 첫 운동을 마치고, 일찍 잤더니 아침 7시에 일어날 수 있었다. 그 덕에 아침도 먹고 9시에 서초 클러스터에 갔었다. 3번째로 왔었지만, 1시간 후 오티 참가인원은 전원 귀가하라고 해서.. 귀가 후 오침 하고 나서 평가를 했다. 그리고 코로나 검사를 받고 나서 겨울 옷 쇼핑 후 지금 카페에서 공부 중이다. 서울에 이쁜 옷들도 많고 사람도 정말 많다. 살아있는 듯한 느낌을 받는다.
쿠버 네티스 강의를 수강하기에는 아직 정말 많이 부족한 것 같다. 그래서 아무래도, 수료하기에는 좀 버거울 것 같다. 42를 진행하면서 기초적인 학습을 해야겠다. 그리고 구매한 쿠버네티스 책 공부를 진행해야겠다. 일단은, C언어부터 제대로 하자.
오늘은 그래서 C언어 포인터에 대한 학습을 진행했다. 강의 시간은 두 강의 합쳐 25분 정도였지만, 천천히 이해하려 노력하니 50분 정도 시간을 소요한 것 같다.
/* 아래의 포스팅은 바로 아래의 url을 참고하여 학습할 수 있었습니다 */
https://github.com/innovationacademy-kr/hitchhikers_guide
C언어 포인터 / 박은종 쌤의 포인터 강의
첫 번째 강의
https://www.youtube.com/watch?v=O3aQ2g7R5wM
첫 번째 강의를 수강하면서, 헷갈렸던 부분의 퍼즐들이 모두 맞춰지는 듯한 느낌을 받았다. 포인터 변수의 선언형과 포인터 변수의 본질적인 이해를 할 수 있었다.
가장 인상적이었던 건 ptr = &num 형태로 값을 넣어야 한다는 것이다. 그 이유는 ptr은 포인터 변수이므로 가리키고 있는 값 주소 안에 있는 변수를 가리켜야 한다는 것이다. 반면 ptr = num 형태는 성립할 수 없다. 그것은 할당해주는 값으로 변수의 값을 할당해주었기 때문이다. 여기 위치는 어떤 변수의 주소 값이 들어가야 한다는 것이다.
두 번째 강의
https://www.youtube.com/watch?v=t_3q_Q79I74
두 번째 강의를 통해 이론으로 학습한 것을 실습을 진행하여 정확하게 이해할 수 있었다.
포인터 변수에 할당되어있는 값은 어떤 변숫값의 주소 값을 가지고 있다. 그래서 그 주소 값에 접근해서 직접 값을 바꿀 수 있다. 예를 들면 포인터 변수 ptr에 &num을 할당했을 때(num == 10 인 상태) *ptr += 1; 와 같은 명령어를 사용하게 되면, 해당 포인터가 num안에 있는 변숫값에 접근해 1 정도 + 시켜 num == 11로 만들어준다.
C언어에서 포인터 사용은 불가피하다, 그리고 포인터 사용을 통해 여러 상황에서 low-level을 깊게 이해할 수 있기에 포인터를 제대로 이해하는 것은 C언어 학습뿐만 아니라 다른 CS지식을 공부할 때도 필수적이다. 기본에 항상 충실하자.
C언어 공부법과 책 추천 (C표준)
https://sunyzero.tistory.com/m/225
위 포스팅을 통해서 어느 정도 정도에 다가가기 위해서는 어떤 공부를 해야 하는지 방향성을 잡은 것 같다. KNK라는C언어 표준에 입각한 정통 원서 서적을 읽어나가면서 천천히 깊게 학습해야 한다는 것이다. KNK로 정통 C학습을 시작하고 K&R로 마무리를 해야 한다는 것이 위 포스팅 저자의 생각이다. 나도 포스팅을 읽고 위 작성자의 의견에 동의한다.
앞으로 수많은 프로젝트를 통해 C학습을 진행하는 상황 속에서 정확하게 학습하는 것이 필요한 상황이다. 아무래도 원서를 구매해 학습에 활용을 해야 할 것 같다.
'Today I Learned' 카테고리의 다른 글
[TIL] C언어 포인터 / 박은종 쌤의 포인터 강의 6 ~ 7 [21-11-21] (0) | 2021.11.22 |
---|---|
[TIL] C언어 포인터 / 박은종 쌤의 포인터 강의 3 ~ 5, Libft 기초 함수 구현, C 프로그래밍: 현대적 접근 - 서론 [21-11-19] (0) | 2021.11.19 |
[TIL] 쿠버네티스 / Managing State With Deployments, Scheduling(1) [21-11-16] (0) | 2021.11.16 |
[TIL] PS 강의 Sec.01-11 / 함수 만들기 [21-11-13] (0) | 2021.11.13 |
[TIL] PS 강의 Sec.01-10 / 2차원 리스트 생성과 접근 [21-11-12] (0) | 2021.11.12 |