전체 글
-
07. Basic Types프로그래밍 언어/C 2020. 3. 30. 16:46
07. Basic Types Make no mistake about it: Computers process numbers ─ not symbols. We measure our understanding (and control) by the extent to which we can arithmetize an activity. 나머지 기본 자료형과 자주 발생하는 문제점들에 대해 알아본다. 01. Integer Types C는 기본적으로 정수와 실수, 두 종류의 숫자 구조를 지원하고 정수형은 부호에 따라 부호가 있는 수, 부호가 없는 수로 나뉜다. Signed and Unsigned Integers sign bit로 알려진 부호가 있는 정수형의 가장 왼쪽 비트는 0이면 양수 또는 0, 1이면 음수를 의미한다. ..
-
06. Loops프로그래밍 언어/C 2020. 3. 30. 16:43
06. Loops A program without a loop and a structured variable isn't worth writing. loop는 다른 구문(loop body)을 반복해서 실행시켜주는 구문이다. C에서 모든 반복은 control expressions을 갖고 있다. loop body가 한 번 반복될 때마다 control expression이 연산되고 참이면 계속 반복한다. C는 while, do, for으로 총 세 가지 반복 연산자를 제공한다. while은 loop body가 실행되기 전 control expression을 연산하고 do는 loop body를 실행한 후 control expression을 연산한다. for는 변수를 증가나 감소하며 카운팅 할 때 편리하게 사용할 수..
-
05. Selection Statements프로그래밍 언어/C 2020. 3. 21. 00:37
05. Selection Statements C에는 많은 연산자들이 있지만 구문은 상대적으로 적다. 우리는 return 구문과 표현식 구문에 대해 다뤄봤었다. 나머지 구문은 각각 어떤 영향을 주는지에 따라 세 가지로 분류할 수 있다. Selection statements. if, switch 구문은 프로그램이 진행할 수 있는 여러 경로 (a particular execution part from a set of alternatives) 중 선택할 수 있게 해 준다. Iteration statements. while, do, for 구문은 반복 행동(iteration)을 도와준다. Jump statements. return, break, continue, goto 구문은 프로그램의 특정 위치로 절대적인 이..
-
03. Formatted Input/Output프로그래밍 언어/C 2020. 3. 19. 21:33
03. Formatted Input/Output In seeking the unattainable, simplicity only gets in the way. `printf`와 `scanf`는 formatted reading and writing을 지원한다. [Section 3.1](##01. the `printf` function)에서는 `printf`를, [Section 3.2](##02. the `scanf` function)에서는 `scanf`를 설명한다. 01. The `printf` Function `printf`는 문자열의 특정 위치에 값을 삽입하는 ***formatted string***의 출력을 위해 고안된 함수다. `printf(`*format string*`, `*expr1*`, `*..
-
02. C Fundamentals프로그래밍 언어/C 2020. 3. 12. 22:38
02. C Fundamentals One man's constant is another man's variable. 이 챕터에서는 몇 가지 기본 개념에 대해 소개하고자 한다. 간단한 프로그램에도 쓰이는 개념인 전처리자(preprocessing directives), 함수(functions), 변수(variables), 그리고 문장(statements)에 대한 내용이 될 것이다. 이러한 개념들은 뒷장에서 훨씬 자세히 다룰 예정이다. Section 2.1 에서는 작은 C 프로그램은 제공하고 간단한 설명 후 어떻게 컴파일과 링크를 하는지 설명한다. Section 2.2 에서는 어떻게 프로그램을 일반화하는지 설명한다. Section 2.3 에서는 설명하기 위한 언급, 주석에 대해 설명한다. Section 2.4..
-
01. Introducing C프로그래밍 언어/C 2020. 3. 11. 20:25
01. Introducing C When someone says "I want a programming language in which I need only say what I wish done", give him a lollipop. C에 빠지기 전에 간단히 C에 대해 살펴보고 가려한다. Section 1.1 에서는 C가 어디서 왔고 왜 만들어졌는지, 그리고 수년간 어떤 모습으로 변해왔는지 알아본다. Section 1.2 에서는 C의 강점과 약점 그리고 C언어를 최대한 활용할 수 있는 방법에 대해 알아본다. 01. History of C Origins C는 Bell 연구소에서 개발하는 UNIX 운영체제를 만들기 위해 Ken Thompson, Dennis Ritchie 외 다수에 의해 작성됐다. Bell..
-
기초의 중요성프로그래밍 언어/C 2020. 3. 5. 13:53
동아리 활동이나 온라인 코딩 테스트를 진행하다 보면 정말 기초가 탄탄하다고 느껴지는 사람들이 있고 내 기초가 정말 부족하다고 느끼는 순간들이 있다. 초등학생때부터 관심을 갖고 진로를 이른 나이에 정해서 10년이라는 소중한 시간을 벌 수 있었지만 정작 얻을 수 있었던건 꿈을 갖고 있다는 안정감 하나뿐이었던 것 같다. 기초적인 지식 없이 무작정 코딩만으로 배울 수 있는 한계점도 명확한 것 같고 기초가 탄탄한 분들이 정말 멋지게 느껴졌기 때문에 학교에서 교재로 쓰기 위해 사놓기만 했던 책을 천천히 읽어보며 정리해 올리려 한다. 책은 K.N.King 교수님의 C Programming : A Modern Approach, 2/E로 진행하려 한다.