입력, 출력이나 계산등에 사용 하는 기본단위는 문자, 문자열, 수치 입니다.
이것들의 표현법은 앞으로 계속 사용하며 꼭 지켜야 합니다.
 

문자는 ' 와 ' 사이에 있는 하나의 글자를 말합니다. 문자의 종류는 일반문자와 특수기능을 하는 제어문자로 나눕니다. 
일반문자 A를  표현하는 방법은 'A' 입니다. A의 아스키 코드값은 65입니다.
그래서 를 앞에 붙여 8진수, \x 를 앞에 붙여 16진수로 표현 합니다. '\101', '\x41'
하나의 글자는 아니지만 A와 같은 코드값 이므로 컴파일러는 같은 것으로 봅니다.
제어문자는 앞에 를 붙입니다. 예를 들면 줄바꿈을 하는 '\n' Tab키를 표현하는 '\t' 등이 있습니다.

문자열은 문자의 집합 입니다.  " 와 " 사이에 하나 이상의 문자가 있습니다. 예를 들면 "C", "C언어"  "C언어 기초\n" 입니다.

문자와 문자열에서 사용하는 ', ", 를 표현하려면 를 앞에 붙여줍니다. '\'', "\"", '\\'

수치는 정수형과 실수형이 있습니다. 정수형은 1, 10, 100 이고 실수형은 10.0, 0.1, 1.1입니다.
정수형은 8진수나 16진수로 표현할 수 있습니다. 8진수는 앞에 0을 붙여 01, 010 으로 씁니다.
16진수는 앞에 0x를 붙입니다. 0xff 0x01 등입니다.

어찌 보면 당연하게 우리가 알고 있는 내용들입니다.

그럼 이것들을 구분해야 하는 이유는 무엇일까요? 다 필요하니까 구분하겠죠.
그럼 누가 필요할까요? 그건 컴파일러가 필요합니다. 그냥 써 놓으면 컴파일러가 알지 못하므로 구분해서 써줘야 합니다.
그런데 왜 컴파일러가 알아야 할까요? 그건 C 컴파일러가 그렇기 때문입니다. C언어를 만든 분이 그렇게 정했죠.
그럼 우린 당연하게 그렇게 써야 합니다. C언어를 배워야 하니까요. 일명 C언어의 문법 입니다.
문법은 꼭 지켜야 합니다. 문법은 의문을 가지지 마세요. 그냥 지켜야할 최소한의 약속 입니다.

C언어를 공부한다는 것은 C언어의 문법을 공부하는 것입니다.
프로그램을 작성하다보면 사람마다 같은 결과지만 내용면에서 다른 경우가 자주 있습니다.
그것은 문법이 아니라 알고리즘이 다른 것입니다. 알고리즘은 문제를 풀어가는 과정이라 할 수 있습니다.

제가 지금 하고 있는 내용은 문법을 정리하는 것입니다. 앞으로 제가 정리하는 내용들을 이미 알고 있으시고 익숙한 분들은
C언어를 이미 다 알고 계신 분들입니다. 하지만 프로그램 하나 만들려면 힘이 들수도 있습니다.
언어만 알고서 프로그램을 한다는 것은 아주 힘이 듭니다.

우리가 망치의 사용법과 용도는 다 알고 있습니다. 하지만 모든 사람들이 다 망치질을 잘하는 것은 아닙니다.
또 망치의 사용 용도에 따라 그 종류도 많습니다. 모든 분야의 망치를 다 잘 다루기도 힘이 듭니다.
문법은 망치일 뿐입니다. 숙련도는 자신이 노력과 관심에 따라 달라질 것입니다.

프로그램은 쉽게 잘하는 방법은 없다고 생각합니다. 그냥 자신의 분야나 관심분야에 대해 지속적인 관심이 최선입니다.
지속적인 관심으로 찾은 것들이 하나의 지식이 되고 그 지식들이 모여 실력이 되는 것입니다.

문법이야기를 하다 너무 길게 썼네요. 화면 입출력도 같이 하려했는데 다음에 하겠습니다.

내용 중 잘못된 부분을 알려주세요. 수정하겠습니다.

 
top
,