혼자 공부하는 C 언어

서현우 저 │ 2019-06-10 출간

· 1:1 과외처럼 공부하고 싶을 때
· 어제 배운 내용이 생각나지 않을 때
· 작심삼일, 하다가 포기하게 될 때

누구나 혼자 할 수 있습니다!

야심 찬 시작이 작심삼일이 되지 않도록 돕기 위해서 <혼자 공부하는> 시리즈를 만들었습니다. 낯선 용어와 친해져서 책장을 술술 넘기며 이해하는 것, 그래서 완독의 기쁨을 경험하고 다음 단계를 스스로 선택할 수 있게 되는 것이 목표입니다.

지금 시작하세요.
<혼자 공부하는> 사람들이 ‘때론 혼자, 때론 같이’ 하며 힘이 되겠습니다.

자세히 보기
실습예제
용어노트
미리보기
정답지
동영상 강의

혼자 공부하는 C 언어 강의

# ‘C 언어’ 궁금한 게 있어요!

C 언어는 시스템 자원을 관리하는 운영체제OS 개발을 위해 만들어진 언어입니다. 따라서 하드웨어를 제어하고 실행 효율을 높여야 하는 곳에 주로 쓰입니다.

대표적으로 특정 하드웨어 에 최적화된 기능이 필요한 임베디드 프로그래밍에 가장 많이 쓰입니다. 가전제품을 비롯한 의료 장비, 무기, 엔진 등 관련 부품에 들어가는 프로그램 개발에 사용됩니다. 사물인터넷과 같이 사물에 인터넷을 연결하여 제어하는 곳에도 C 언어를 사용합니다.

무엇보다 프로그래 밍 절차를 이해하고 데이터 처리 과정을 메모리 상황과 함께 고민해볼 수 있는 가장 좋은 언어입니다. 그래서 다른 언어들을 배우기 전에 꼭 거쳐야 할 기본 언어라고 생각합니다. 게임 프로그래밍에 많이 사용되는 C++, C# 등은 C를 기반으로 파생된 언어이며, 웹 개발에 쓰이 는 자바, 빅데이터 분야에 쓰이는 파이썬 등의 클래스는 C 언어의 구조체로부터 그 개념이 출발합니다. 결국 C 언어를 잘한다는 것은 그 자체로도 가치가 있지만 다른 수많은 언어를 쉽게 배울 수 있는 가능성을 갖고 있다는 뜻입니다.

C 언어를 배우고 난 후에는 객체지향 언어를 공부하는 것이 좋습니다. 자바, 파이썬 등 현재 인기 있는 대부분의 언어가 객체지향 언어이기 때문입니다.

또는 C 언어에서 파생된 객체지 향 언어인 C++을 공부하면서 객체지향 프로그래밍 방식에 대해 고민하는 시간을 갖는 것도 좋습니다. 다만 C++ 언어가 깊고 내용이 많으니 객체지향 언어에 대한 개념만 정리하고 자 바나 파이썬으로 넘어가는 것도 좋습니다. 임베디드 프로그래밍도 웹이나 앱과 연동하여 작 성하므로 자바가 널리 사용됩니다.

C 언어를 배우고 난 후에 또 한 가지 꼭 해야 할 일이 있습니다. 자료구조와 알고리즘에 대한 공부를 시작해야 합니다. 같은 데이터를 처리할 때 메 모리를 더 적게 사용하면서 빨리 실행되는 프로그램을 만들려면 상황에 맞는 적절한 자료구 조와 알고리즘의 선택이 필요합니다.

필자는 이 책을 읽는 독자가 C 언어를 공부하는 것에 그치지 않고 객체지향 프로그래밍에 대한 이해와 기본적인 자료구조 및 알고리즘을 이어서 공부할 수 있도록 온라인 카페를 통해 꾸준히 지원할 예정입니다.

필자가 처음 C 언어를 독학할 때 느꼈던 답답함을 생각하며 ‘처음 공부하거나 한 번쯤 실패 한 경험이 있는’ 독자를 기준으로 설명하고자 했습니다.

처음 배우는 독자가 책으로 혼자 공 부할 수 있도록 쉽고 자세히 설명하고 그림과 예제 코드를 충분히 넣었습니다. 각 절 끝에는 키워드와 표로 핵심 내용을 정리할 수 있고 확인 문제와 도전 실전 예제가 있습니다. 또한 책 에 싣지 못한 다양한 문제를 온라인에서 제공하고 동영상 강의를 통해 문제 풀이와 프로그래 밍 방법을 설명합니다.

특별한 선행 지식이 필요하지는 않습니다. 윈도우와 같은 OS를 사용할 줄 알고, 진법, 거듭 제곱 등과 같은 기본 수학 지식이 있으면 충분합니다. 다만 앞에서 배운 내용이 이후 내용의 선행 지식이 될 수 있으니 1장부터 차근차근 공부할 것을 권합니다.

설명을 읽고 직접 예제 프로그램을 만들어 이해한 내용이 맞는지 확인하는 방법이 가장 좋습 니다. 실행결과를 보고 자연스럽게 다른 결과에 대한 궁금증이 생기면 코드를 수정하고 새로 운 결과를 통해 자신의 생각이 맞는지 다시 확인합니다. 이런 과정을 반복하면서 진도를 나 가면 어느 시점에 스스로 프로그램을 만들고 싶은 욕심이 생깁니다. 그 이후에는 C 언어 공 부로 스스로 밤을 새게 될 거예요.

책과 동영상 강의, 예제와 도전 문제 등 C 언어 학습을 위해 잘 짜여진 시나리오가 여기 있습 니다. 온라인 카페를 통한 콘텐츠 지원 등 훌륭한 무대장치도 준비되어 있습니다. 이제 멋진 공연을 위해 대본을 숙지하고 끊임없이 연습하는 것은 주인공인 독자의 몫으로 남기겠습니다.