Media Log


1-1. C언어의 시작


컴퓨터를 잘 모르시는 분들도 내부에서 이동하는 데이터는 '0'과 '1'로만 구성된 디지털 신호의 조합이라는 것을 알고 계실겁니다. 우리가 이 컴퓨터에게 어떤 특수한 명령을 내리려면 어떻게 해야만 할까요? '0'과 '1'로 이루어진 복잡한 기계어 까지 알아야만 할까요? 만약 기계어를 배워야 한다면 너무 어렵고 비효율적일 것입니다. 사람이 이해하고 터득하기 쉬운 언어를 고급 언어라 하며, 고급 언어 중 우리가 지금부터 배우게 될 C언어도 포함됩니다.


물론 C언어를 컴퓨터가 바로 이해하는것은 아닙니다. 사람이 작성한 언어를 기계어로 바꾸어 주는 '컴파일러'가 있기에 가능한겁니다. 컴파일러는 뒤에서 다시 설명하겠습니다. 이 C언어는 켄 톰슨과 데니스 리치에 의해 만들어졌으며 특징으로는 절차지향적, 효율성, 이식성 등을 꼽을수 있겠습니다. 자, 이제부터 우리가 작성한 소스 파일이 어떠한 과정을 거쳐서 실행 파일이 되는지 한번 살펴보도록 합시다.

1-2. 소스 파일, 오브젝트 파일, 실행 파일

 
한번 차례대로 살펴보도록 합시다. 제일 첫단계에서 우리가 배우게 될 C언어로 소스 코드를 작성합니다. 그리고 확장자가 .c인 파일에 저장합니다. 이렇게 작성된 문서를 소스 파일이라 하며, 이 소스파일의 컴파일의 대상이 됩니다. 아직은 0과 1만을 이해할수 있는 컴퓨터는 우리가 작성한 소스 코드를 바로 이해하지 못합니다. 별도의 과정을 거치고 나서야 컴퓨터가 그것을 이해하고 명령을 실행할 수 있는거죠.


그리고 작성된 소스 코드는 컴파일에 앞서 전처리 과정을 거치는데, 전처리 과정이란 #include, #define, #if와 같은 지시자를 처리하는 과정을 말하는 것입니다. 그 후에, 컴파일러에 의해 .i의 확장자를 가진 파일이 어셈블리 코드인 .s란 확장자를 가진 파일로 컴파일 되고, 어셈블러에 의해 .s의 확장자를 가진 파일이 .o의 확장자를 가진 오브젝트 파일로 컴파일 됩니다. 간단히 정리하자면, 작성된 .c 파일이 전처리 과정을 거치고 컴파일러에 의해 어셈블리 코드로 변환됩니다. 그다음 어셈블러에 의해 바이너리 코드로 변환됩니다. 그러나 컴파일러가 어셈블러의 역할까지 담당하므로 컴파일 시 바로 바이너리 코드가 생성됩니다. 이 바이너리 코드는 오브젝트 파일(확장자가 .obj)인 파일에 저장이 되며 링커의 링킹 대상이 됩니다.


최종적으로 .o 파일은 링커에 의해 표준 C 라이브러리와 링크되어 실행 파일(.exe)이 만들어지게 됩니다.


1-3. 강좌에 쓰일 컴파일러 소개


이제 그 컴파일러를 어디서 구할수 있는지 알아보겠습니다. 컴파일러는 매우 다양합니다. Visual C++ 혹은 코드블록, Dev C++ 등이 있으며 이 강좌에서는 Visual Studio 2012를 다운로드 받아 2012를 기준으로 강좌를 작성하도록 하겠습니다. 아래에 링크를 걸어두었으니 해당 링크로 이동하여 Visual Studio 2012 Express를 다운로드 합시다.


다운로드: http://www.microsoft.com/visualstudio/kor/downloads


해당 사이트로 이동하셨으면, Visual Studio Express 2012 for Windows Desktop를 클릭하여 다운로드 언어를 한국어로 선택하고 아래의 설치 옵션에서 Windows Desktop용 Visual Studio 2012 Express - 한국어의 지금 설치를 클릭합니다. 그리고 wdexpress_full.exe가 다운로드 되면 바로 실행시킵니다.



동의함에 체크하고 설치를 누릅니다. '사용자 환경 개선 프로그램에 참여하여 Visual Studio의 품질, 안정성 및 성능을 개선하는 데 도움을 주십시오.'에 체크하셔도 괜찮습니다.
 


설치가 진행 중입니다. 다소 시간이 오래 걸릴수 있으니 설치가 되기를 기다립시다.


설치가 완료되었으면, 아래에 있는 시작을 누릅시다.



이런 창이 뜨면, 온라인 등록을 눌러 설문조사를 하고 제품 키를 받아야만 합니다. 마이크로소프트 사이트에 가입해야 설문조사를 할 수 있으니, 아이디가 없으신 분은 먼저 가입을 하시고 설문조사를 거쳐 제품키를 받으세요.


이렇게 제품키를 받으셨으면, 다시 제품키 등록창으로 돌아가 등록 후 비주얼 스튜디오 2012를 실행시킵니다. 사용자 설정 로드 후 비주얼 스튜디오가 정상적으로 실행됬다면 설치를 무사히 마친것입니다. 성공적으로 설치를 하셨으면, 비주얼 스튜디오를 실행하여 이것저것 한번 둘러보도록 합시다. 여기까지 읽으시느라 수고 많으셨고, 다음 강좌부터 본격적으로 C언어에 들어가보도록 하겠습니다.

저작자 표시
신고
  1. 김준영 at 2012.01.13 20:45 신고 [edit/del]

    잘보고갑네다 ㅇㅅㅇ

    Reply
  2. Test at 2012.01.14 11:19 신고 [edit/del]

    수고하십니다.

    Reply
  3. 김상완 at 2012.03.16 09:54 신고 [edit/del]

    잘보고 가요.
    개인차이지만 영어보다 더 어렵네요...

    Reply
  4. 박선우 at 2012.09.08 23:09 신고 [edit/del]

    감사용 좀 어렵네요 ㅠㅠ

    Reply
  5. 김승현 at 2012.09.13 03:33 신고 [edit/del]

    감사합니다~

    Reply
  6. xotksdlsp at 2013.03.11 19:52 신고 [edit/del]

    첫번째 강좌 고맙습니다!!! ^^

    Reply
  7. 이정현 at 2013.03.31 22:01 신고 [edit/del]

    c언어 처음 시작하는데 조금어렵내요..

    그래도 잘보고갑니다^^

    Reply
  8. ZiNee at 2013.08.18 23:45 신고 [edit/del]

    강좌 잘 읽었습니다.
    정독했습니다.
    앞으로 시간내어서 계속 정독하여 나가겠습니다.
    좋은 강좌 올려주셔서 감사합니다.

    Reply
  9. 신JOWO at 2013.12.31 16:30 신고 [edit/del]

    근데 런타임 오류가 뜨는이유가뭐죠,,?

    Reply
  10. 2917 at 2014.01.28 09:25 신고 [edit/del]

    아무리 찾아봐도 2012버젼 윈도우용은 안보이는데 2013을 받아서 해야 하나요?
    그럴경우 다운로드 옵션을 뭘로 해야하나요?

    Reply
  11. BlogIcon ctrl+prompt=programming at 2014.03.23 17:07 신고 [edit/del]

    안녕하세요. C언어 깅좌 아주 잘 모바일폰으로 잘 봤습니다. 구체적인 그림으로 싑게 설명해 주신점 감사합니다.
    제가 드릴꺼는 댓글 업로드 같네요.^^ 세상이 좋아져서 스마트폰으로 간단하고 편하게 볼수있다는점에 연산기계와의 친분을 쌓아 올리는것이 꼭 필요한거 같네요. 저 같은 생초보자에게 쉽게 이해 할수있는 강좌 또 한버 감사인사 드립니다.^^

    Reply
  12. 독학생 at 2014.06.10 10:28 신고 [edit/del]

    오랜만에 왔네요 파이썬 공부하다가 일단 c먼저 해야겠습니다. 좋은 하루 보내세요!

    Reply
  13. 탕큰탕큰 at 2014.09.14 14:20 신고 [edit/del]

    오옿ㅎㅎㅎㅎㅎㅎ
    매우 자세하게 설명되있군요 헤헿
    제 꿈에 다가갈 길을 열여주시는걸 도와주셔서 감사합니다ㅎㅎㅎㅎ

    Reply
  14. 모과 at 2015.01.05 13:06 신고 [edit/del]

    감사합니다...이제 공부 시작하려구요^^

    Reply
  15. 컴알못자 at 2017.01.07 15:26 신고 [edit/del]

    혼자서 파이썬 공부 시작했는데 참고할만한 강의 찾다가 들어오게 되었어요^^ 감사합니다.

    Reply
  16. 낙타그래머 at 2017.06.15 09:59 신고 [edit/del]

    정말 소중한 강의 감사드립니다.
    잘보고 배우겠습니다.

    Reply

submit

티스토리 툴바