[따배씨] 1.9 컴파일러와 링커 | 따라하며 배우는 C언어, c언어 , 컴퓨터 작동원리, 코딩

Sdílet
Vložit
  • čas přidán 27. 08. 2024
  • [홍정모의 따라하며 배우는 C언어] www.inflearn.c...
    [홍정모의 따라하며 배우는 C++ (모던 C++)] www.inflearn.c...
    [홍정모의 게임 만들기 연습 문제 패키지] www.inflearn.c...
    구독과 좋아요 눌러주시면 더 좋은 강의로 보답하겠습니다. :)

Komentáře • 47

  • @user-wp2hr1bk1p
    @user-wp2hr1bk1p Před 5 lety +2

    컴파일러와 링커에 대해 굉장히 명쾌한 강의였습니다..!! 그동안 책으로만 배웠던 링커가 어떻게 작동하는지 눈으로 보고 싶었는데, 물론 직접 library 에 있는 기계어가 obj 파일로 들어가는 것을 확인 한 것은 아니었지만, 충분히 모든 상황을 머릿속에 그릴 수 있었습니다. 이제 제가 짜는 C언어 코드가 어떠한 절차를 거쳐서 결과물이 되는지 확실히 알았습니다. 유익한 강의 완전 감사드립니다^^

  • @user-tc2cx8vh4u
    @user-tc2cx8vh4u Před 4 lety +2

    와... ㄹㅇ.... 방통대 강의보다 낫다.... 미쳤다 미쳤어.... 어쩜 이리 가려운 부분을 벅벅 긇어주십니까. 효자손 이시네

  • @TheFinemax
    @TheFinemax Před 5 lety +1

    정말 친절한 강의이네요.. 다른 C언어 유튜브 강의를 들으면서 몰랐던 부분을 새롭게 알게 되었습니다. 감사합니다~*

  • @user-rs5dv2xn6r
    @user-rs5dv2xn6r Před 4 lety +1

    수강완료. Hello world를 치는게 프로그래밍입문의 전통이라고 하더군요.
    2019.11.27 18시 16분. 입문 완료 !

  • @sung8432
    @sung8432 Před 4 lety +1

    강의 정말 잘보았습니다 감사합니다.

  • @user-pb4rq9kh4s
    @user-pb4rq9kh4s Před 4 lety +2

    좋은 강의 감사합니다 :)

  • @user-ho7um1ct1r
    @user-ho7um1ct1r Před 5 lety +1

    C언어 까먹어서 다시 공부하는데 감사해용ㅎ 대학교는 이렇게까지 자세하게 알려주지 않는데 설명도 꼼꼼하시고 목소리도 좋으셔서 듣기 좋아요ㅎ

    • @HongLab
      @HongLab  Před 5 lety

      감사합니다. 공부하시는 데에 도움이 되었으면 좋겠어요~

  • @linuxer2460
    @linuxer2460 Před 3 lety +1

    정말 좋은 감사합니다😊

  • @allinmyvision
    @allinmyvision Před rokem +1

    1:25 인간의 언어로 프로그래밍이 가능합니다
    Ingredients.
    72 g haricot beans
    101 eggs
    111 cups oil
    32 zucchinis
    119 ml water
    114 g red salmon
    100 g dijon mustard
    33 potatoes
    Method.
    Put potatoes into the mixing bowl.
    Put dijon mustard into the mixing bowl.
    Liquefy contents of the mixing bowl.
    Chef 1:
    Put oil into a saucepan.
    Heat oil until hot.
    Chef 2:
    Put salmon into the mixing bowl.
    Fold salmon into the mixing bowl.
    Chef 1:
    Put eggs into the saucepan.
    Fry eggs until cooked.
    Combine contents of the mixing bowl and saucepan.
    Fold contents of the mixing bowl into the mixing bowl.
    Pour contents of the mixing bowl into the baking dish.
    Put zucchinis on top of the souffle.
    Bake for 30 minutes.
    Serves 1.
    Chef 라는 언어로 작성한 코드입니다 (이 레시피대로 따라 만들면 큰일납니다)

  • @user-bx6tr3bj2j
    @user-bx6tr3bj2j Před 4 lety +3

    메리 크리스마스

    • @HongLab
      @HongLab  Před 4 lety +1

      메리 크리스마스

  • @sjyda
    @sjyda Před 4 lety +1

    2019년 12월 3일 - 정말 대단히 감사합니다

  • @Non-alcohol-energetic
    @Non-alcohol-energetic Před 4 lety +1

    수강완료

  • @allinmyvision
    @allinmyvision Před rokem +1

    12:17 저 파이썬과 c를 동시에 하는 개발자입니ㄷ

  • @user-fz6bo1ju2b
    @user-fz6bo1ju2b Před 5 lety +8

    무료로 듣기에는 너무나 과분한 강의입니다.;;;

    • @user-ox8ti8ju2i
      @user-ox8ti8ju2i Před 4 lety +1

      정말이지 백프로 천프로 만프로 동감입니다. 또한 어찌나 귀에 쏙쏙 들어오도록 설명을 잘 하시는지.. 정말 정말 감사합니다.

  • @user-fk4pq3fp4h
    @user-fk4pq3fp4h Před 3 lety +1

    감사합니다 !@.@

  • @trueroughly1691
    @trueroughly1691 Před 3 lety +2

    질문이 있는데요.
    CPU 마다 ISA가 다른데, 이게 컴퓨터 CPU 동작과 1:1 대응이 되는 언어라서 하드웨어 위에서 이 언어가 어떻게 작용하는지 직관적으로 어떻게 이해가 가는데요. 하드웨어 instruction set과 1대 1대응하기 때문에 컴퓨터 아키텍처랑 밀접한 연관이 있어서 CPU마다 달라지는 것도 그렇게 이해가 되구요. 하지만 밑에서 답하신 것처럼 C언어->어셈블리어->머신코드로 가는 게 아니라면 C언어는 어떻게 포터블한 걸까요.
    CPU를 던져주면 그 위에 커널을 깔고 커널 위에 켜켜히 올려서 프로그램을 동작시키는데, 리눅스 OS는 C로 쓰이잖아요.
    그리고 C는 CPU마다 다 포터블하구요. 그렇다면 머신코드를 열어보면 같은 소스코드더라도 cpu마다 다 다르게 컴파일 되는 건가요?
    그렇다면 컴파일러는 어떻게 cpu를 인식해서 딱 거기에 맞게 머신코드를 만들어낼까요..

    • @HongLab
      @HongLab  Před 3 lety

      좋은 질문입니다. 비쥬얼 스튜디오 빌드 옵션에 x86, x64가 따로 있는 이유는 뭘까요?

    • @trueroughly1691
      @trueroughly1691 Před 3 lety

      @@HongLab 앗.. 감사합니다. 혹시 IDE가 그 부분을 알아서 처리해 주는 게 맞나 여쭤보고 싶습니다.

    • @quasarbeyond7828
      @quasarbeyond7828 Před 3 lety +1

      예. 질문 맞습니다. 컴파일러를 운영체제별로, cpu 별로 만듭니다. 그러면 컴파일러만 만들면, C언어로 작성된 코드는 포터블 하다고 생각할 수 있습니다. C언어로 작성된 모든 애플리케이션은, 해당 운영체제와 아키텍처에 대한 컴파일러만 있으면 해당 운영체제와 아키텍처에 맞는 실행파일을 만들어낼 수 있습니다. Windows 에서는 MS 에서 만든 컴파일러인 MSVC Compiler을 이용합니다. Linux 에서는 보통 GCC 컴파일러나 Clang을 이용합니다.

  • @user-lw2ti9vz8c
    @user-lw2ti9vz8c Před 4 lety +1

    2019년 11월 28일 오전 11시 21분.

  • @soft8706
    @soft8706 Před 3 lety +1

    로우 레벨의 중요성을 한국사회에서는 잘 몰라요 왜 로우 레벨이 중요하냐면은 로우레벨을 잘알면은 개발자가 만능이 되요 c
    면 c c++면 c++ java면 자바 특히 c++알면 그 어떤언어도 무섭질않아요 강력하게되는겁니다

  • @user-gm1py8tt9e
    @user-gm1py8tt9e Před 5 lety

    링커라는 개념을 모르고 막상 c언어를 시작했는데 라이브러리 와 관련이 있었다닌 매우 놀랍네요. (비전공자) 혹시 호기심에 또 적어봅니다.1) 이것은 라이브러리 중에 일부 인건 가요? 아니면 함수인가요? // 또 두번째로2) 궁금한 것이 printf 라는 의미가 print + function의 약자인가요? 그래서 프린트 함수??

    • @HongLab
      @HongLab  Před 5 lety

      뒤에 나옵니다. stdio.h. 파일을 열어 보세요. 강의 중에 직접 열어서 보여드리기도 합니다.

  • @bellluugaa
    @bellluugaa Před 4 lety +2

    10:18 저는 왜 자동완성이 안뜰까요..

  • @starmax4538
    @starmax4538 Před 4 lety

    18:45를 보면서 따라하는데 아무리 뒤져봐도 비주얼 스튜디오라는 폴더만 있고 버전이 붙은 폴더가 없는데 어떻게 해야하나요?

  • @user-ln2ol7qj6j
    @user-ln2ol7qj6j Před 4 lety +1

    안녕하세요 문득 궁금해서 그러는 건데요 library code는 어디에 저장되어있나요? linking 할때 가져다 쓰려면 어디에는 저장이 되어있어야 할 것 같은데 어디 있는지 궁금하네요

    • @HongLab
      @HongLab  Před 4 lety

      탐색기에서 검색해보세요

  • @user-ie6nv4lh5m
    @user-ie6nv4lh5m Před 3 lety

    ctrl F5 눌러서 출력까지 되는데 파일에 들어가면 obj파일과 exe파일이 없는데 어디서 잘놋된건가요 ㅠㅠㅠ

  • @user-ey6mo7fi4p
    @user-ey6mo7fi4p Před 3 lety

    오늘도 잘 공부 했습니다. 공부하다가 질문있어 여쭈어 봅니다. 제가 만든 파일이 2개가 잇는데 디버깅하면 지금 파일이 디버깅 안되고 다른파일이 디버깅 됩니다.(빌드는 다 성공이 됩니다)
    이거 어떻게 해결 해야 하나요?ㅠㅠ

    • @HongLab
      @HongLab  Před 3 lety +1

      프로젝트에 제대로 들어가있는지 다시 확인해보세요. 저도 예전에 겪어본 실수입니다.

  • @dddddd15926
    @dddddd15926 Před 5 lety +1

    교수님 stdio.h 이나 printf 입력시 교수님처럼 자동완성이 안뜹니다ㅠㅠ
    실행시켜도 Hello world 가 안뜨고 code0 만 뜨는데 왜이럴까요?ㅠㅠ obj파일도 생성이 안되네요 ㅠ

    • @HongLab
      @HongLab  Před 5 lety +1

      천천히 처음부터 다시 해보세요. 독학하신다면 이때가 고비입니다. 문법은 오히려 쉬워요.

    • @dddddd15926
      @dddddd15926 Před 5 lety

      @@HongLab 넵 교수님 항상 빠른답변 감사합니다!!^^시간 많이 늦었는데 모쪼록 편히 주무십쇼^^

  • @S-MKim
    @S-MKim Před rokem

    64 bit VS 프로그램을 설치하셨을텐데 왜 Program Files(x86)에 가서 설치되는 걸까요?

    • @HongLab
      @HongLab  Před rokem

      VS 자체는 32비트일 수 있습니다. VS 2022는 자체도 64비트로 알고 있습니다. (가물가물하네요^^;)

  • @wss_108
    @wss_108 Před 4 lety

    출력창에서 해당코딩파일이 어디에 위치해있다 라는 경로도 출력되게 하려면 어떻게 해야하나요?

    • @HongLab
      @HongLab  Před 3 lety

      '실행파일'의 위치는 실행하면서 알 수 있는데 한참 뒤에 나옵니다. command line arguments

  • @hangyul24680
    @hangyul24680 Před 4 lety +1

    고급 언어가
    고수준프로그래밍언어인가요?

    • @HongLab
      @HongLab  Před 4 lety

      둘 다 High level language를 번역한 겁니다.

  • @user-pu1zp8yo3e
    @user-pu1zp8yo3e Před 4 lety +1

    MCU가 뭐예요 ?

  • @toast2506
    @toast2506 Před 3 lety

    0하고 영어 O하고 구분되는 글꼴 어떻게 찾나요

    • @HongLab
      @HongLab  Před 3 lety

      프로그래머를 위한 글꼴들이 있어요. 네이버에서 제공하는 나눔 코딩도 많이 쓰실겁니다.