[홍정모의 따라하며 배우는 C언어] www.inflearn.c... [홍정모의 따라하며 배우는 C++ (모던 C++)] www.inflearn.c... [홍정모의 게임 만들기 연습 문제 패키지] www.inflearn.c... 구독과 좋아요 눌러주시면 더 좋은 강의로 보답하겠습니다. :)
컴파일러와 링커에 대해 굉장히 명쾌한 강의였습니다..!! 그동안 책으로만 배웠던 링커가 어떻게 작동하는지 눈으로 보고 싶었는데, 물론 직접 library 에 있는 기계어가 obj 파일로 들어가는 것을 확인 한 것은 아니었지만, 충분히 모든 상황을 머릿속에 그릴 수 있었습니다. 이제 제가 짜는 C언어 코드가 어떠한 절차를 거쳐서 결과물이 되는지 확실히 알았습니다. 유익한 강의 완전 감사드립니다^^
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 라는 언어로 작성한 코드입니다 (이 레시피대로 따라 만들면 큰일납니다)
질문이 있는데요. CPU 마다 ISA가 다른데, 이게 컴퓨터 CPU 동작과 1:1 대응이 되는 언어라서 하드웨어 위에서 이 언어가 어떻게 작용하는지 직관적으로 어떻게 이해가 가는데요. 하드웨어 instruction set과 1대 1대응하기 때문에 컴퓨터 아키텍처랑 밀접한 연관이 있어서 CPU마다 달라지는 것도 그렇게 이해가 되구요. 하지만 밑에서 답하신 것처럼 C언어->어셈블리어->머신코드로 가는 게 아니라면 C언어는 어떻게 포터블한 걸까요. CPU를 던져주면 그 위에 커널을 깔고 커널 위에 켜켜히 올려서 프로그램을 동작시키는데, 리눅스 OS는 C로 쓰이잖아요. 그리고 C는 CPU마다 다 포터블하구요. 그렇다면 머신코드를 열어보면 같은 소스코드더라도 cpu마다 다 다르게 컴파일 되는 건가요? 그렇다면 컴파일러는 어떻게 cpu를 인식해서 딱 거기에 맞게 머신코드를 만들어낼까요..
예. 질문 맞습니다. 컴파일러를 운영체제별로, cpu 별로 만듭니다. 그러면 컴파일러만 만들면, C언어로 작성된 코드는 포터블 하다고 생각할 수 있습니다. C언어로 작성된 모든 애플리케이션은, 해당 운영체제와 아키텍처에 대한 컴파일러만 있으면 해당 운영체제와 아키텍처에 맞는 실행파일을 만들어낼 수 있습니다. Windows 에서는 MS 에서 만든 컴파일러인 MSVC Compiler을 이용합니다. Linux 에서는 보통 GCC 컴파일러나 Clang을 이용합니다.
링커라는 개념을 모르고 막상 c언어를 시작했는데 라이브러리 와 관련이 있었다닌 매우 놀랍네요. (비전공자) 혹시 호기심에 또 적어봅니다.1) 이것은 라이브러리 중에 일부 인건 가요? 아니면 함수인가요? // 또 두번째로2) 궁금한 것이 printf 라는 의미가 print + function의 약자인가요? 그래서 프린트 함수??
컴파일러와 링커에 대해 굉장히 명쾌한 강의였습니다..!! 그동안 책으로만 배웠던 링커가 어떻게 작동하는지 눈으로 보고 싶었는데, 물론 직접 library 에 있는 기계어가 obj 파일로 들어가는 것을 확인 한 것은 아니었지만, 충분히 모든 상황을 머릿속에 그릴 수 있었습니다. 이제 제가 짜는 C언어 코드가 어떠한 절차를 거쳐서 결과물이 되는지 확실히 알았습니다. 유익한 강의 완전 감사드립니다^^
와... ㄹㅇ.... 방통대 강의보다 낫다.... 미쳤다 미쳤어.... 어쩜 이리 가려운 부분을 벅벅 긇어주십니까. 효자손 이시네
정말 친절한 강의이네요.. 다른 C언어 유튜브 강의를 들으면서 몰랐던 부분을 새롭게 알게 되었습니다. 감사합니다~*
수강완료. Hello world를 치는게 프로그래밍입문의 전통이라고 하더군요.
2019.11.27 18시 16분. 입문 완료 !
강의 정말 잘보았습니다 감사합니다.
좋은 강의 감사합니다 :)
C언어 까먹어서 다시 공부하는데 감사해용ㅎ 대학교는 이렇게까지 자세하게 알려주지 않는데 설명도 꼼꼼하시고 목소리도 좋으셔서 듣기 좋아요ㅎ
감사합니다. 공부하시는 데에 도움이 되었으면 좋겠어요~
정말 좋은 감사합니다😊
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 라는 언어로 작성한 코드입니다 (이 레시피대로 따라 만들면 큰일납니다)
메리 크리스마스
메리 크리스마스
2019년 12월 3일 - 정말 대단히 감사합니다
수강완료
12:17 저 파이썬과 c를 동시에 하는 개발자입니ㄷ
무료로 듣기에는 너무나 과분한 강의입니다.;;;
정말이지 백프로 천프로 만프로 동감입니다. 또한 어찌나 귀에 쏙쏙 들어오도록 설명을 잘 하시는지.. 정말 정말 감사합니다.
감사합니다 !@.@
질문이 있는데요.
CPU 마다 ISA가 다른데, 이게 컴퓨터 CPU 동작과 1:1 대응이 되는 언어라서 하드웨어 위에서 이 언어가 어떻게 작용하는지 직관적으로 어떻게 이해가 가는데요. 하드웨어 instruction set과 1대 1대응하기 때문에 컴퓨터 아키텍처랑 밀접한 연관이 있어서 CPU마다 달라지는 것도 그렇게 이해가 되구요. 하지만 밑에서 답하신 것처럼 C언어->어셈블리어->머신코드로 가는 게 아니라면 C언어는 어떻게 포터블한 걸까요.
CPU를 던져주면 그 위에 커널을 깔고 커널 위에 켜켜히 올려서 프로그램을 동작시키는데, 리눅스 OS는 C로 쓰이잖아요.
그리고 C는 CPU마다 다 포터블하구요. 그렇다면 머신코드를 열어보면 같은 소스코드더라도 cpu마다 다 다르게 컴파일 되는 건가요?
그렇다면 컴파일러는 어떻게 cpu를 인식해서 딱 거기에 맞게 머신코드를 만들어낼까요..
좋은 질문입니다. 비쥬얼 스튜디오 빌드 옵션에 x86, x64가 따로 있는 이유는 뭘까요?
@@HongLab 앗.. 감사합니다. 혹시 IDE가 그 부분을 알아서 처리해 주는 게 맞나 여쭤보고 싶습니다.
예. 질문 맞습니다. 컴파일러를 운영체제별로, cpu 별로 만듭니다. 그러면 컴파일러만 만들면, C언어로 작성된 코드는 포터블 하다고 생각할 수 있습니다. C언어로 작성된 모든 애플리케이션은, 해당 운영체제와 아키텍처에 대한 컴파일러만 있으면 해당 운영체제와 아키텍처에 맞는 실행파일을 만들어낼 수 있습니다. Windows 에서는 MS 에서 만든 컴파일러인 MSVC Compiler을 이용합니다. Linux 에서는 보통 GCC 컴파일러나 Clang을 이용합니다.
2019년 11월 28일 오전 11시 21분.
로우 레벨의 중요성을 한국사회에서는 잘 몰라요 왜 로우 레벨이 중요하냐면은 로우레벨을 잘알면은 개발자가 만능이 되요 c
면 c c++면 c++ java면 자바 특히 c++알면 그 어떤언어도 무섭질않아요 강력하게되는겁니다
링커라는 개념을 모르고 막상 c언어를 시작했는데 라이브러리 와 관련이 있었다닌 매우 놀랍네요. (비전공자) 혹시 호기심에 또 적어봅니다.1) 이것은 라이브러리 중에 일부 인건 가요? 아니면 함수인가요? // 또 두번째로2) 궁금한 것이 printf 라는 의미가 print + function의 약자인가요? 그래서 프린트 함수??
뒤에 나옵니다. stdio.h. 파일을 열어 보세요. 강의 중에 직접 열어서 보여드리기도 합니다.
10:18 저는 왜 자동완성이 안뜰까요..
18:45를 보면서 따라하는데 아무리 뒤져봐도 비주얼 스튜디오라는 폴더만 있고 버전이 붙은 폴더가 없는데 어떻게 해야하나요?
안녕하세요 문득 궁금해서 그러는 건데요 library code는 어디에 저장되어있나요? linking 할때 가져다 쓰려면 어디에는 저장이 되어있어야 할 것 같은데 어디 있는지 궁금하네요
탐색기에서 검색해보세요
ctrl F5 눌러서 출력까지 되는데 파일에 들어가면 obj파일과 exe파일이 없는데 어디서 잘놋된건가요 ㅠㅠㅠ
오늘도 잘 공부 했습니다. 공부하다가 질문있어 여쭈어 봅니다. 제가 만든 파일이 2개가 잇는데 디버깅하면 지금 파일이 디버깅 안되고 다른파일이 디버깅 됩니다.(빌드는 다 성공이 됩니다)
이거 어떻게 해결 해야 하나요?ㅠㅠ
프로젝트에 제대로 들어가있는지 다시 확인해보세요. 저도 예전에 겪어본 실수입니다.
교수님 stdio.h 이나 printf 입력시 교수님처럼 자동완성이 안뜹니다ㅠㅠ
실행시켜도 Hello world 가 안뜨고 code0 만 뜨는데 왜이럴까요?ㅠㅠ obj파일도 생성이 안되네요 ㅠ
천천히 처음부터 다시 해보세요. 독학하신다면 이때가 고비입니다. 문법은 오히려 쉬워요.
@@HongLab 넵 교수님 항상 빠른답변 감사합니다!!^^시간 많이 늦었는데 모쪼록 편히 주무십쇼^^
64 bit VS 프로그램을 설치하셨을텐데 왜 Program Files(x86)에 가서 설치되는 걸까요?
VS 자체는 32비트일 수 있습니다. VS 2022는 자체도 64비트로 알고 있습니다. (가물가물하네요^^;)
출력창에서 해당코딩파일이 어디에 위치해있다 라는 경로도 출력되게 하려면 어떻게 해야하나요?
'실행파일'의 위치는 실행하면서 알 수 있는데 한참 뒤에 나옵니다. command line arguments
고급 언어가
고수준프로그래밍언어인가요?
둘 다 High level language를 번역한 겁니다.
MCU가 뭐예요 ?
어디 나오나요?
Merry ChristmasTo you
0하고 영어 O하고 구분되는 글꼴 어떻게 찾나요
프로그래머를 위한 글꼴들이 있어요. 네이버에서 제공하는 나눔 코딩도 많이 쓰실겁니다.