[잼민이도 이해하는 C언어 강의] 1. C언어 처음 시작하기, C언어 컴파일러 설치 방법
안녕하세요
정고리즘의 정고쌤입니다.
보통 코딩을 처음 공부한다고 하면
일반적으로 C언어나 파이썬 등의 언어를 선택해서
책이나 유튜브를 통해 공부하기 마련입니다.
하지만 안타깝게도 코딩을 시작하고 다들 얼마지나지 않아
포기하는 경우가 대부분인데요
제 생각에는 그 이유가
강의의 너무 높은 진입장벽 때문이라고 생각합니다.
코딩을 유튜브나 책으로 시작하려는 분들의 경우
아무리 좋고 수준 높은 강의라도
강의 자체를 이해하지 못하기 때문인데요
그럴 수 밖에 없는 것이
제가 찾아보고 읽고, 보고, 들었던 강의들은
대부분이 전공자들을 위한 수준이었습니다.
제가 이제부터 시작할 강의는
정말 C언어로 코딩을 처음 시작한 코딩 입문자분들께
비전공자인 분들도 심지어 초중고등학생분들도
자세하게 구체적으로 알려드리지 않더라도
"아~ 이게 이런 용도로 작성되는 코드구나!"
라는 것까지만 이해하시도록 강의하고 싶습니다.
이 이상은 당장 필요하지는 않습니다.
사실 처음 코딩을 시작하시는 분들에게는
<stdio.h>가 무엇인지
2진법, 8진법 등등...
그렇게 자세히 아실 필요는 없다고 봅니다.
아무리 수준 높고 자세히 알려주는 강의를 들어도
결국 알맹이, 즉 핵심이 되는 부분은 몇 개 없거든요.
그렇게 깊고, 자세한 공부는 C언어가 무엇인지 알게된 후에
천천히 해도 괜찮습니다.
나중에는 '파이썬이 아닌 C언어로 시작해야되는 이유'에 대해서도 포스팅하겠습니다.
첫 강의에 앞서 서두가 길었습니다.
결론만 말씀드리자면
어렵고 지루한 긴 이론보다는
정말 기본적이고, 필수적인 이론들만 위주로 강의를 진행할 것이라는 겁니다.
이를 바탕으로 코딩 공부를 시작하기 위한 진입장벽을 낮춰
코딩에 흥미와 호기심이 들게 하는 것이
제 '잼민이도 이해하는 C언어 강의'의 목표입니다.
비전공자나 일반 학생분들도 이해할 수 있도록 말이죠.
더 깊고 자세한 건 나중에 따로 공부하면 되니까요.
먼저 오늘은 C언어 첫 강의이기 때문에
1. 프로그래밍 언어란? |
2. 프로그래밍(코딩)이란? |
3. C언어 실행 환경 구축 |
이렇게 3가지만 진행해 보겠습니다.
물론 서두에서 말씀드렸듯이 절대 깊게 진행하지 않을 예정이기에
절대 이해하지 못할 부분은 없다고 봅니다.
혹여 이해가 어려운 부분이 있다면 댓글로 질문주시면 답변드리겠습니다.
1. 프로그래밍 언어란?
우선 여러분들이 학습할
프로그래밍 언어란 무엇인지 알아야합니다.
한국인이라면 "안녕하세요"로 인사할 것이고,
미국인이라면 "Hello"로 인사할 것입니다.
일본인이라면 "こんにちは"라고 인사하겠죠.
그렇습니다.
'언어'라는 것은 다양한 종류가 있고,
공통적으로 모두 상호 소통하기 위한 용도입니다.
프로그래밍 언어도 마찬가지입니다.
컴퓨터(기계)와 소통하기 위한 용도라고 보시면 됩니다.
아시는 분들은 아시겠지만 프로그래밍 언어에도 종류가 정말 많습니다.
마치 똑같아 보이는 한국어에도 종류가 많은 것처럼
(잘 생각해보면 영어나 일본어 등 다른 언어도 마찬가지랍니다.)
- 표준어
- 경상도 사투리
- 충청도 사투리
- 전라도 사투리
- 제주 사투리
.
.
.
프로그래밍 언어도 마찬가지입니다.
- C언어
- Python
- JAVA
- C++
- C#
.
.
.
프로그래밍 언어에는 목적과 사용 방법에 따라
어떤 언어를 사용할지가 달라진다고 보시면 됩니다.
저희는 그 중에서도 C언어를 공부할 예정입니다.
2. 프로그래밍(코딩)이란?
프로그래밍 언어는 위에서
설명드린 내용으로 대충 이해 하셨을 거라 생각합니다.
대충만 이해하셔도 됩니다.
자세한 내용은 서두에서 말씀드린 것처럼 천천히 알아가면 되니까요.
그렇다면 비슷한 말인
프로그래밍이란 무엇일까요?
요즘에는 코딩이라는 말로 더욱 잘 알려져 있는데
똑같은 의미라고 생각하셔도 무방합니다.
프로그래밍 언어가 대화를 위한 언어 그 자체 였다면
프로그래밍(코딩)이란 언어를 이용한 대화라고 보시면 됩니다.
위 사람이 말하는 내용 -> 프로그래밍 언어
위 사람이 말하는 행위 -> 프로그래밍(코딩)
그렇다면,
앞으로 이 강의를 통해 C언어라는 프로그래밍 언어를 이용해
프로그래밍(코딩)하는 방법을 배운다고 생각해도 되겠죠?
3. C언어 실행 환경 구축
마지막으로 C언어를 공부하고, 코딩하기 위한 기본인
C언어 실행 환경을 구축하는 방법에 대해서 알아봅시다.
이를 위해서는 컴파일러가 필요합니다.
여기서,
컴파일러라는 것에 대해 간단하게 알아보고 넘어가겠습니다.
사실 컴퓨터는 프로그래밍 언어를 바로 바로 알아듣지 못합니다.
우리가 C언어를 통해서 올바르게 코딩을 해도
컴퓨터가 이해하지 못한다는 뜻입니다.
"???왜??"
컴퓨터는 애초에 '기계어'만을 알아듣도록 설계되어있기 때문입니다.
여기서 기계어는 0과1로만 이루어진 언어를 말합니다.
가끔 SF영화나 소설 혹은 IT관련 인터넷 밈 등에서 종종 보셨을겁니다.
0과 1이 막 적혀있는 것을요.
지금 여러분들 머릿 속에 떠오르는 것들이
바로 기계어들입니다.
(영화 매트릭스에도 많이 나왔었죠)
따라서 기본적으로 영어가 사용되는
C언어(뿐만 아니라 다른 프로그래밍 언어도)를 컴퓨터가 이해할수 있을리 없습니다.
"아니 그럼 프로그래밍 언어로 컴퓨터랑 어떻게 소통함?"
그래서 앞에서 말했던 컴파일러가 필요합니다.
프로그래머가 작성한 코드는 바로 컴퓨터에게 전달되지 않습니다.
중간에 컴파일러를 거쳐서 컴퓨터에게 전달이 됩니다.
컴파일러는 프로그래머가 작성한 코드를
기계어로 번역하는 역할을 수행하는 것이죠.
그리고 그러한 번역 과정을
컴파일 과정이라고 부릅니다.
컴파일러에도 당연히 다양한 종류가 있습니다.
컴파일러 역시 프로그래밍 언어처럼
실행환경, 목적 등 다양한 이유에 따라 선택하실 필요가 있습니다.
아마 타강의나 일반적인 C언어 책의 경우
대부분 Visual Studio라고 하는 컴파일러를 이용할 것입니다.
그러나 저는 Dev C++ 라는 컴파일러를 이용할 생각입니다.
왜냐하면 Dev C++는 Visual Studio 보다 가볍고, 인터페이스도 매우 간편하기 때문에
그리고 무엇보다 무료이기때문에
입문자분들이 공부하기에 매우 적합한 컴파일러 입니다.
물론 추후에 더욱 전문적이고, 개발을 목적으로한 코딩을 하기 위해서는
Visual Studio가 필요하겠지만
지금은 아니잖아요?
Visual Studio | Dev C++ | |
단점 |
- 복잡하고 어려운 설정과 인터페이스
- 매우 무거움
|
- 프로그램이 너무 가벼움 |
장점 |
- 디버깅, 협업 등 다양한 강력한 개발 편의기능 지원
- 다양한 확장 프로그램 지원
|
- 매우 간편한 설정과 인터페이스
- 매우 가벼움
|
Dev C++ 설치 방법
1. 구글에 Dev C++ 검색
설치 방법은 매우 간단합니다.
우선 구글에 Dev C++라고 검색합니다.
그러면 Sourceforce 사이트에 업로드된
설치파일을 다운로드 할 수 있습니다.
2. 설치 파일 다운로드
초록색으로된 다운로드 버튼을 클릭합니다.
그리고 몇 초 기다리면
설치파일이 자동으로 다운로드됩니다.
이후부터는 버튼만 무지성으로 클릭하면 되기때문에
사진으로만 설명하겠습니다.
3. 한국어 언어 선택
4. 동의함 클릭
5. 다음 클릭
6. 설치 클릭
7. 마침 클릭
8부터는 DevC++ 컴파일러를 설치하고
처음 실행했을 때 한번만 나오는 화면입니다.
컴파일러 환경설정이며,
이때 설정했던 내용들은 추후에 변경이 가능하기 때문에
크게 걱정하실 필요없습니다.
8. 한국어 선택 후 - Next 클릭
9. (컴파일러 테마 설정) Next 클릭
10. OK 클릭
11. Dev C++ 실행 화면
마지막으로 이렇게
Dev C++ 정상적으로 실행되면 설치가 끝이 난겁니다.
다음부터는 바탕화면에 자동으로 생성된
Dev C++ 바로가기 아이콘을 통해
컴파일러를 실행하실 수 있습니다.
다음 강의에서는 자료형과 출력 방법에 대해서
알아보도록 하겠습니다.
'프로그래밍 > C언어' 카테고리의 다른 글
[잼민이도 이해하는 C언어 강의] 6. 연산자 / #산술연산자, #관계연산자, #논리연산자 (0) | 2022.04.15 |
---|---|
[잼민이도 이해하는 C언어 강의] 5. 입력하기 / #scanf (3) | 2022.04.09 |
[잼민이도 이해하는 C언어 강의] 4. 변수란? / #변수 (1) | 2022.04.08 |
[잼민이도 이해하는 C언어 강의] 3. 자료형과 변환문자 / #자료형, #변환문자 (0) | 2022.04.08 |
[잼민이도 이해하는 C언어 강의] 2. 출력하기 / #printf (0) | 2022.04.08 |