2020. 6. 18. 17:27ㆍ🧑🏻💻/C & C++
C
설계자: 데니스 리치
개발자: 데니스 리치, 벨 연구소
초기 버전 출시일: 1972년
최근 버전 출시일: 2018년 6월
최근 버전: C18
파일 확장자: c,.h
유닉스 시스템의 바탕 프로그램은 모두 C로 작성되었고, 수많은 운영 체제의 커널 또한 C로 만들어졌다.
다양한 최신 언어들도 그 뿌리를 C에 두고 있다. 모든 컴퓨터 언어의 근본이 되는 언어이다.
C언어를 배웠을때 사용했던 책들이며, 아래 출처 및 참고에 C언어를 독학하면서 참고했던 웹사이트.
그리고 그 밑의 사족에는 웹사이트에서 감명 깊었게 읽었던 부분을 발췌 하여 작성 하였습니다.
특히나 sunyzero님의 티스토리는 C언어를 처음 시작하시는 분들께 도움이 될 수 있는 글이니 한번 읽어보세요.
C언어는 low level과 memory, 운영체제(OS) 등을 이해하거나 작성하기 위해 거쳐가는 관문이 C언어의 본질이다. 구구단 같은 수치 연산이나 논리 연산을 배우는 것이 주목적이라면 python이 백배 낫다고 생각된다. 사실 비전공자라면 굳이 C언어를 배울 필요가 없다. 오히려 C언어 대신에 python을 공부하는게 훨씬 도움이 된다. 왜냐하면 C언어는 문법은 간결하지만 그 대신에 함정이 많은 구조를 가지고 있어서 제대로 공부하지 않으면 이런 함정에서 허우적 대기 십상이다. 문법만 대충 나열한 책들은 정통파 C언어를 제대로 다루지 않기 때문에 더더욱 함정에 빠질 가능성이 높다. 비비꼬아 놓은 C언어 문제풀이 학습지 책이나 암기문제를 다루는 책은 성취가 점수로 표시되니 뿌듯할 수도 있다. 하지만 이는 사파의 무공과 같아서 운영체제(OS)라는 본질의 첫 단추를 끼울때 방해가 될 수도 있다. 무슨 올림피아드 대회 준비 같은 것이 아니라면 이런 이단 사이비 공부에 심취하지 않는 편이 좋다. 특히 연산자 우선 순위를 비비 꼬아 놓거나, 포인터를 스크류바처럼 꼬아놓은 문제들을 수두룩하게 풀고 있다면 이미 이단 사이비에 빠진 것이니 조심하자. - sunyzero tistory
'🧑🏻💻 > C & C++' 카테고리의 다른 글
[C] 2차원 배열 malloc / free / 메모리 할당과 해제 (0) | 2020.07.10 |
---|---|
[C / C++] Jumping Cat / C 게임 / C++ 게임 / C언어 게임 / 고양이 게임 만들기 (0) | 2020.06.24 |
[C++] ConsoleColor / setColor() / 색 넣는 함수 / how to change color in cmd (0) | 2020.06.24 |
[C++] C++ (0) | 2020.06.24 |
[C] system()함수 / cmd 명령어 / 명령 프롬프트 / 명령 줄 인터프리터 (0) | 2020.06.23 |