디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

어떡해 일기 #18 :: C언어를 해야하는 이유

어떡해갤로그로 이동합니다. 2009.12.28 22:37:18
조회 1146 추천 0 댓글 36


어떡해 일기는 제가 \'쓸만한 프로그래머\'가 되기까지의 하루하루를 기록해 나갈 것입니다.
이것은 제가 그날 하루동안 프로그래머가 되기 위해 노력한 사항과 에피소드를 만천하에 공개하여,
저 스스로 나태해지지 않도록 채찍질 하기 위함과 동시에 선배님들에게 조언을 구하고자 함입니다.
자유분방한 DC에서 올라가는 글인 만큼 그날의 기분에 따라 존칭, 돌연 막말 등 일관성 없는 말투가 있을 수 있습니다.

길다는 의견이 많아 앞으로는 되도록 일기를 짧게 쓰도록 합니다.
더 많은 형들과 이야기를 공유하기 위해서입니다.

+++++++++++++++++++++++
현재 사용중인 교재+++++++++++++++++++++++++++++

주교재 : 세계제일 C 언어 시작하기(베스트북)
교양 교재 : 생각하는 프로그래밍(인사이트)

3주차 : C언어 기초 정리 및 자료구조 습득

==========================================시작

프로젝트도 파토났겠다.
열혈강의 C에서 배운 내용을 정리하는 시간을 가졌습니다.
저번 프로젝트에서 부족한 면을 많이 깨달았기 때문에 다시 한번 기초를 돌아보는 시간을 갖기로 한거죠.
처음에는 열혈강의C를 다시보고 예제를 풀고 있었습니다.
이미 한번 풀었던 문제임에도 신기하게도 몇시간을 투자해도 잘 안풀리는 문제가 있는가하면,
예전에 했던것이 생각나서 슥슥 풀리는 문제도 있더군요.

결국 열혈강의 책 조차도 겉핥기로 공부가 되었다는 뜻이겠죠.
그나마 처음 C를 접했을 때와는 달리 문법적 오류도 적고 문제를 대하는 데에 있어서
차분하게 머리속으로 어떤 식으로 구현해야하는지 떠오르는 것은 장족의 발전이라 할 수 있었습니다.

다만, 열혈강의 C를 다시한번 끝내고 나서 마지막으로 다른 종류의 C 책을 보기로 했습니다.
본래라면 바로 자료구조로 넘어가기로 되어 있었지만, 열혈강의 C 이외에 다른 관점에서 보는 초보자용 C언어를 알고 싶었습니다.
만약 전혀 다른 출판사의 전혀 다른 저자가 쓴 C언어 교재를 수월하게 이해할 수 있다면.
C언어에 대해서 기초는 잡혔다고 판단할 수 있겠다고 생각했거든요.

선택한 책은 세계제일 C언어 시작하기라는 베스트북의 책이었습니다.
집에 있더군요. 아마도 프로그래밍이 하고 싶어서 충동적으로 산 책중 하나일겁니다.
이때까지만 해도 몰랐죠. 이 책을 펼치는 순간 8시간동안 이 책에서 손을 뗄 수 없을 거라는 사실을 ㄱ-;

첫페이지 펼치자 마자 쇼킹했습니다.
열혈강의 C가 문법적으로 프로그램을 짜는 것을 방법적으로 제시하고 있는 것에 비해서.
세계제일 C언어 시작하기는 C언어의 문법이 가지는 의미, 그리고 메모리상에서 일어나고 있는 일을 상세히 설명해주고 있더군요;

우연찮게 책을 잡는 순서를 잘 잡은거 같았습니다.
만약 열혈강의를 보기전에 이 책을 봤더면, 이게 뭔소린지 몰라서 집어던졌을 책이었겠지만,
우습게도 열혈강의를 본 시점에서 이 책을 보니, 열혈강의에서 놓쳤던 점을 참 많이 알게 되더군요.

가령.... 열혈강의 C에서는 int 자료형이 메모리상 4byte를 차지하고 과거 터보 c의 경우 2byte를 차지하는 이유는
컴파일러의 차이라고 짧막하게 이야기합니다.

그런데 이 녀석은 컴파일러의 차이라기 보다는, 터보c가 구현될때의 환경 즉, 당시 주력 컴퓨터가 16bit 였고, 32bit로 넘어오는 과정에서 일어난
메모리 관리 체계의 차이라는 점을 서술해 놨더군요. 가령 16bit 컴퓨터의 경우 cpu가 한번에 처리할 수 있는 데이터량, 즉 word의 크기가
2byte(8bit*2=16비트), 그리고 현재 제가 컴파일하는 32bit 환경의 경우 word의 크기는 4byte가 되는거죠.
int는 컴파일상에서 기본형으로 연산을 수행하니 당연히 word에 영향을 받게 되고 거기에 따라서 int의 데이터 크기가 정해지는 거였습니다.
따라서 기본 환경이 64bit로 완전히 전환되면 컴파일러 상의 int는 4byte가 아닌 8byte가 될 수 있는 가능성을 보여줍니다.
때문에 결국 컴파일러의 문제라기 보다는 사용하는 시스템의 환경이 중요한 요인이 된 것이죠.
이에 8bit와 16bit로 넘어오게 되면서 메모리상의 관리 변화도 거론을 하더군요.
세그먼트:오프셋.
비트를 구현하게 되었을 때는 하위 비트 그리고 상위비트 순으로 구현.
재미있게도 제가 왜 늅늅들이 C언어로 프로그래밍을 시작해야하는지, 그리고 C언어 가치와 활용. 포인터의 역할이 얼마나 중요한지를
열혈강의 보다는 이 책에서 배운 것 같습니다.
이 책에 비교하면 열혈강의는 아무래도 C++이나 다른 언어로 넘어가기 위한 과정으로서 C언어를 배운다는 느낌으로 서술한 책인것 같습니다.
물론 완전초보용 책은 아니네요.
(이 책이 500페이지를 조금 넘기는데 포인터가 80페이지에 거론되고 있습니다. C와 포인터는 뗄레야 뗄수 없다는 서술을 하고 있기 때문이죠.)

이책을 훑어보다시피 공부를 하면서 느낀 것은.
C로 프로그래밍을 시작해야하는 이유가, C언어가 가진 언어적 특성이 JAVA나 C++ 을 포함한 대부분의 언어를 활용하는 데에 있어
기초적인 부분들을 모두 익힐 수 있다는데에 있는것 같았습니다.

머리로는 알고 있었지만, 실제로 이런식으로 뒤통수를 맞으니까 확실히 와닿네요.
그리고 알면 알수록 내용이 깊어집니다.
정말 공부하면 할수록 두근두근함이 멈추질 않는데, 한편으로는 끝이 없는 공부가 될 것 같아서 걱정도 앞서네요.
하지만, 당분간 기초가 생길때까지 C언어를 파고 들고 싶습니다.
돈이 안되는 언어를 잡고 있다는 생각을 하실수도 있지만, 정말 이녀석을 어느정도 활용할 줄 알고 이해하면
다른 언어를 다룸에 있어 정말 이해력이 빨라질 것 같습니다.

어?

오늘 길군요 ㅋ

아직 공부가 끝나지 않았습니다. 조금 강행군을 해볼까 합니다 ㅋ

그럼 횽들 수고하세용.


오늘 일기 끄 ㅌ








추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 우리나라를 대표해서 UN 연설자로 내보내고 싶은 스타는? 운영자 25/09/29 - -
AD 프로게이머가 될테야!! 운영자 25/10/01 - -
공지 프로그래밍 갤러리 이용 안내 [96] 운영자 20.09.28 47584 65
2893502 근데 상법개정이랑 배임죄 폐지는 상충하는거 아님? [4] ㅇㅇ(121.168) 12:05 17 0
2893501 뭔지랄을 했길래 하필 남쪽에서 태어났을까 ㅅㅂ [9] 타이밍뒷.통수한방(1.213) 11:54 33 0
2893500 질투 인민 공화국에 태어나신걸 환영합니다. [3] ㅇㅇ(121.168) 11:48 16 0
2893499 전라도애서 인명살상가능 실탄 3만발 불법유출 [1] ♥냥덩이♥갤로그로 이동합니다. 11:24 14 0
2893498 ai 재앙은 저능아 바이브코더에 의해 올겁니다. 프갤러(218.154) 11:22 17 0
2893497 ai가 개똥코드 싸질러서 rewrite하는데 그걸 또 ai로 한다고? [4] 프갤러(218.154) 11:19 41 0
2893496 찢은 보수진보 대통합을 이루고 국가붕괴시킴 ㅋㅋㅋㅋㅋㅋ 타이밍뒷.통수한방(1.213) 11:03 13 0
2893495 rewrite it 정도는 ㅇㅇ갤로그로 이동합니다. 10:54 23 0
2893494 카카오톡 드디어 레전드 평점 돌파 [1] 헬마스터갤로그로 이동합니다. 10:49 28 0
2893493 한국을 예견한 미국 드라마 ㅇㅇ(121.168) 10:47 21 0
2893492 국정농단 김현지 게이트 국감 특검 수사로 진실 밝혀야 [3] ♥냥덩이♥갤로그로 이동합니다. 10:39 27 1
2893491 드디어 3 모니터 구축했다. 2년만에... 넥도리아(220.74) 09:51 15 0
2893489 [kt cloud x goorm] IT 직군 개발 / 비개발 8개 과정 프갤러(14.32) 09:33 44 0
2893488 디씨는 서버 이중화 되어있을까? ㅇㅅㅇ [3] 헤르 미온느갤로그로 이동합니다. 09:01 43 0
2893487 틀딱 프붕이 국비 붙었어 [1] ㅇㅇㅇ(125.130) 09:00 34 1
2893486 인생은 운이야 [3] ㅇㅇ(121.168) 08:37 34 0
2893485 동네 꽃가게 추석대목 준비완료 ㅇㅅㅇ [1] 헤르 미온느갤로그로 이동합니다. 08:22 25 0
2893484 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 08:11 16 0
2893483 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 08:08 21 0
2893482 외국도 rewrite it in rust 하고 있는데 언어는 그저 프갤러(218.153) 07:28 35 0
2893481 나는내향적이야 나는조현병이야 [4] 손발이시립디다갤로그로 이동합니다. 07:22 36 0
2893471 멘헤라 모모링..❤ ♥냥덩이♥갤로그로 이동합니다. 06:37 21 0
2893460 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 06:19 25 0
2893452 민주당 종교단체 동원했나 “김민석으로 가시죠” 의혹 일파만파 ♥냥덩이♥갤로그로 이동합니다. 06:04 20 0
2893449 외국도 초급/저연차 프로그래머들 다 잘리고 있는데 AI는 그저 [1] 프갤러(220.70) 06:00 35 0
2893415 컴공 학식 2학년인데 어케해야할까요 [1] ㅇㅇ(211.60) 04:44 51 0
2893387 트럼프에 등 돌리는 MAGA! 원인은 엡스타인이 아니라 '딥스테이트'? 발명도둑잡기(118.216) 02:08 19 0
2893385 노인들이 인생이 노력이랬다가 운이라고하는데 정신 못차려서 그럼 타이밍뒷.통수한방(1.213) 01:44 24 0
2893384 이스라엘 삐삐 원격 폭파처럼 노트북, 서버 배터리 원격 폭발 공작 발명도둑잡기(118.216) 01:38 43 0
2893381 찢은 보수진보 대통합을 이루고 국가붕괴시킴 ㅋㅋㅋㅋㅋㅋ 타이밍뒷.통수한방(1.213) 01:35 17 0
2893379 정부 클라우드 복구불가 혹시 내란세력 증거 소멸 목적? 발명도둑잡기(118.216) 01:27 19 0
2893377 미국 국기 이모티콘은 두개 발명도둑잡기(118.216) 01:22 16 0
2893376 카카오 코테.. c없네.. 프갤러(112.170) 01:20 73 0
2893371 리눅스 창시자 리누스 방한하면 유퀴즈에 나와야 합니다 [1] 발명도둑잡기(118.216) 01:10 38 0
2893367 요즘은 국비교육 인기가 없나보네 [3] 프갤러(219.251) 00:53 88 0
2893366 근데 오히려 못생긴거<<이거 나름 나쁘지 않은듯 [1] ㅆㅇㅆ(113.192) 00:50 41 0
2893365 [3] 노력갤로그로 이동합니다. 00:41 56 0
2893364 북돼지새끼는 왜 외제품 사용하는거임?? 타이밍뒷.통수한방(1.213) 00:16 17 0
2893363 커널 패치가드 조지는 중인데 루도그담당(58.239) 00:14 21 0
2893362 오늘의 영화 실마리: 온라인게임 역사 다큐 발명도둑잡기(118.216) 00:12 20 0
2893360 수면쉬야햇당 [2] ♥냥덩이♥갤로그로 이동합니다. 00:00 51 0
2893359 울트라리스크 [2] ♥냥덩이♥갤로그로 이동합니다. 10.01 51 0
2893358 남자도 여신 유튜버 되기 가능 발명도둑잡기(118.216) 10.01 17 0
2893357 뭔가 덥넹 ♥냥덩이♥갤로그로 이동합니다. 10.01 40 0
2893356 애인과 수갑 한쪽씩 차면 뭐 하고 놀아야 하나요? 발명도둑잡기(118.216) 10.01 15 0
2893355 너희 좃찐따라서 나님 없으면 개노잼이잖아 [1] ♥냥덩이♥갤로그로 이동합니다. 10.01 32 0
2893354 나는 supabase의 기능중에 db를 벡터화 하는게 존나 편해서 ㅆㅇㅆ찡갤로그로 이동합니다. 10.01 35 0
2893353 나도 만약 성공했으면 운이 좋았다라고 변명했을듯 타이밍뒷.통수한방(1.213) 10.01 25 0
2893352 인생이 운이라는새끼는 그냥 집안이 좋은새끼들이나 하는 핑계거리이지 타이밍뒷.통수한방(1.213) 10.01 23 0
뉴스 투모로우바이투게더 수빈, 커버낫 뉴 엠버서더로 발탁… 해외 시장 공략 가속화 디시트렌드 10.01
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2