디시인사이드 갤러리

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

갤러리 본문 영역

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

어떡해갤로그로 이동합니다. 2009.12.28 22:37:18
조회 1144 추천 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
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 현역으로 군대 안 간게 의아한 스타는? 운영자 25/06/30 - -
270351 내가 중고딩때 미쳐있던 거 [1] 분당살람갤로그로 이동합니다. 11.09.07 72 0
270349 내 사수가 있자나 [3] 좋은아버지갤로그로 이동합니다. 11.09.07 70 0
270346 내가 미쳐있었던거 . 좋은아버지갤로그로 이동합니다. 11.09.07 37 0
270344 난 돼지인가봐 좋은아버지갤로그로 이동합니다. 11.09.07 33 0
270343 점심은 먹고 코딩하자~~ 거칠게갤로그로 이동합니다. 11.09.07 61 0
270341 워메 자바에 디폴드 매개변수도 지원안하네 ㅜㅜ arduous갤로그로 이동합니다. 11.09.07 66 0
270340 뭔가에 미쳐보려면 [10] 좋은아버지갤로그로 이동합니다. 11.09.07 90 0
270339 아 로또나 복권이나 5억정도만 당첨됬으면 좋겠다.. [6] 쿄스케갤로그로 이동합니다. 11.09.07 79 0
270338 따지고 보면 프로그래머도 덕후아님? [2] arduous갤로그로 이동합니다. 11.09.07 73 0
270337 나도 덕후는 존나 존경하는데... 쿄스케갤로그로 이동합니다. 11.09.07 54 0
270334 달려라 부메랑이 갑이었음 [4] 어떡해갤로그로 이동합니다. 11.09.07 52 0
270331 니들 그럼 캡틴 테일러는 아냐??? [7] 쿄스케갤로그로 이동합니다. 11.09.07 68 0
270329 근데 몇살때부터 애니 좋아했냐? [5] 쿄스케갤로그로 이동합니다. 11.09.07 89 0
270327 자바공부 3일째] 연산자 오버로딩이 없다네... [6] arduous갤로그로 이동합니다. 11.09.07 255 0
270326 아 월급 확인되었음 ㅋ 좋은아버지갤로그로 이동합니다. 11.09.07 47 0
270325 난 취미가 코딩이고 싶다... [4] 쿄스케갤로그로 이동합니다. 11.09.07 75 0
270322 개발자는 블루칼라일까요 화이트칼라일까요 [2] 비밀의계곡갤로그로 이동합니다. 11.09.07 82 0
270321 프갤이 덕갤이라니 참을수가 없다 [4] monoless갤로그로 이동합니다. 11.09.07 60 0
270320 이러니 프로그래머가 덕후라는 소리를 듣지!! [3] blackd갤로그로 이동합니다. 11.09.07 113 0
270318 이거뭐야? rails갤로그로 이동합니다. 11.09.07 28 0
270317 횽들 씨언어 교재로 쓸만한거 추천좀 [2] Dara빠갤로그로 이동합니다. 11.09.07 84 0
270316 백신엔진 개발하려면 디스어셈블 좀 해야 되는거 아니냐? 보|딸|천|황|노|부|나|가갤로그로 이동합니다. 11.09.07 54 0
270315 취직할라면 [2] deveun갤로그로 이동합니다. 11.09.07 79 0
270314 횽들 직업란에 회사원이라고 적냐 프로그래머라고 적냐?? 쿄스케갤로그로 이동합니다. 11.09.07 80 0
270312 비트다니시는 형님들 질문있습니다 [33] Enoch갤로그로 이동합니다. 11.09.07 217 0
270311 자바 인텔리센스 기능 업그레이드 할수있어? arduous갤로그로 이동합니다. 11.09.07 35 0
270308 빌어먹을 대기업 [1] Kirov갤로그로 이동합니다. 11.09.07 72 0
270307 진리의디버거 [3] deveun갤로그로 이동합니다. 11.09.07 60 0
270306 EJB는 실무에서 별로 안쓰지??? [1] 거칠게갤로그로 이동합니다. 11.09.07 78 0
270305 근데 구글 코드 잼 파이널 나가면 ㅁㄴㅇㄹ(130.126) 11.09.07 57 0
270300 게임 만들꺼 아니면 물리학 공부 안해도 되지?? [2] 거칠게갤로그로 이동합니다. 11.09.07 110 0
270297 코드고쳐서 컴파일까지는 됬는데 이번엔 실행시키면 바로 꺼져요 ㅜㅜ [8] 하양(61.73) 11.09.07 91 0
270296 근데 [2] ㅁㄴㅇㄹ(130.126) 11.09.07 59 0
270295 보통 연애하면 몇일이면 쎾쓰 하냐?? [2] 거칠게갤로그로 이동합니다. 11.09.07 137 0
270294 여자 가슴 한번 못만져 보고 크기를 논하지 마라. 크기별 느낌을 알려주깨 [2] iljeomobolt갤로그로 이동합니다. 11.09.07 2260 0
270292 나는 독실한 크리스천이기 때문에 [5] ㅁㄴㅇㄹ(130.126) 11.09.07 92 0
270290 아스횽 형이 좀 보재 y녀6디리(220.118) 11.09.07 41 0
270288 java 기촌데 궁금해요..... [4] 화이트순수갤로그로 이동합니다. 11.09.07 63 0
270287 c++ 텍스트 파일 읽어서 출력하는 코드인데요 자꾸 에러가나요 ㅜㅜ [3] 하양(61.73) 11.09.07 64 0
270285 다이어트의 최고봉은 바로 이거다!(배나온 프겔러들 주목) [1] 거칠게갤로그로 이동합니다. 11.09.07 74 0
270282 여자의 슴가는 한손으로 쥐었을 때 꽉 차는 정도가 딱이다. [8] 거칠게갤로그로 이동합니다. 11.09.07 163 0
270280 듀얼모니터가 좋긴한데 시선이 분산된다. [2] 거칠게갤로그로 이동합니다. 11.09.07 69 0
270278 진짜 삼성은 잘 베끼긴 한다. 역시 복사 전자인가 [2] 거칠게갤로그로 이동합니다. 11.09.07 97 0
270276 학부생인데 [1] ㅁㄴㅇㄹ(130.126) 11.09.07 51 0
270275 프로그래머라면 빌게이츠, 잡스의 실리콘 밸리 전쟁 봐라 [2] 거칠게갤로그로 이동합니다. 11.09.07 140 0
270274 자바 멀티쓰레딩으로 처리속도좀 올려볼려고하는데.. 횽들 좀 도와줘 [11] System32(203.249) 11.09.07 103 0
270272 토끼드롭스 꼭 봐라 두번 봐라 [3] y녀6디리(220.118) 11.09.07 94 0
270271 아무래도 월급이 이상해 ;;;내가 바본가? [14] 좋은아버지갤로그로 이동합니다. 11.09.07 201 0
270269 IT쪽은 안철수냐 박근혜냐 [4] 장어구이(211.245) 11.09.07 162 0
270268 boolean serarch에서 말야... [6] boolean(163.152) 11.09.07 69 0
뉴스 김예찬-서희, ‘추억 보정 플레이리스트’ 음원 발표! “명곡의 재해석” 디시트렌드 06.30
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2