사용하는 책 : a book on c
단어를 바탕으로 문장이 이루어진다. 이것이 프로그래밍.
C언어를 다루기 위해서 스테이트먼트(statement)를 만들 줄 알아야 된다.
표현(expression)을 이용해서 스테이트먼트를 만들고 이것이 컴퓨터에게 명령이 된다. 세미콜론(;)을 기준으로 스테이트먼트를 만든다.
표현을 사용하기 위해서는 word를 알아야 되는데 핵심적인 word를 keyword라고 한다. (p.77)
ANSI : 수많은 C 컴파일러가 있는데, 통일시키기 위한 규정
ANSI를 잘 지킨 컴파일러의 대표적인 예시는 gcc이다.
이름을 만드는 이유는 대상을 특정하기 위해서, 구분하기 위해서이다.
메모리의 특정 주소를 쉽게 구분하기 위해 "변수명"을 지정한다. 이것을 Identifier라고 한다.
C언어는 절차 지향형 언어이다. 객체지향형인 JAVA와는 다름
절차 지향형의 단계는 divid&conquer(분할 정복)이다.
BNF(Backus-Naur-Form) : syntax(문법)을 만들기 위한 규칙, C언어의 모든 문법은 BNF로 정의할 수 있다.(p.73~)
| 는 또는 이라는 표현, 위의 표현은 digit을 정의하는 것이다. digit은 기울임체인데, 이는 syntactic group을 정의할 때 사용한다.
evaluation 했을 때, 0이면 거짓, 0이 아닌 모든 수는 참이다.
Constants : 변하지 않는 수. 3.14++는 안된다.
종류 : integer | floating number | character
2의 보수법 : 양수와 음수를 처리하기 위해 사용
character형 : askii를 사용하여 각 값에 대응되는 수를 저장한다.
string형 : pointer을 사용하여 문자(문자열의 시작점)를 저장한다. {char *}
Operator(~82) :
C언어는 Operator이 강력하다.
Puncuators: ,(comma) 스테이트먼트를 묶을 때(군락을 만들 때) 사용한다.