<개인공부>/[C#]

[C#] 리터럴, 예약어, 식별자에 대해서 (literal, reserved word, identifier)

BlockDMask 2019. 1. 11. 01:07
반응형

안녕하세요. BlockDMask 입니다.

오늘은 C#에서 사용하는 어휘? 표현방법에 대해서 몇가지 알아보겠습니다.

1. 리터럴 (literal)

(1) 설명

- 위키에 '리터럴' 이라고 검색을 하면 "컴퓨터 과학 분야에서 리터럴(literal)이란 소스 코드의 고정된 값을 대표하는 용어다." 라고 나옵니다. (https://ko.wikipedia.org/wiki/%EB%A6%AC%ED%84%B0%EB%9F%B4)

- "소스코드에 고정된 값을 대표하는 용어" 이게 이해하기 좀 힘든데요, 제가 생각했을때는 보통 우리가 말하는 "값" 들 인거죠. 정수값, 실수값.. 변수의 값!! 


(2) 예시

- 코드로 보면 아래 하이라이트 쳐진 부분들이 '리터럴'들 입니다.

int num = 10;

int[] arr1 = new int[4] { 1, 2, 3, 4 };

int[,] arr2 = new int[3, 2] { { 1, 2}, {3, 4}, {5, 6} };


float f = 5.2f;

double d = 10.5;

decimal money = 200.944m;


char c = 'C';

string str = "blockdmask C# study";


: 이렇게 코드로 보니까 감이 좀 잡히나요? 이제 우리 친구들이랑 이야기할때 이렇게 이야기 해봅시다. (친구의 욕은 막아드리지 못합니다.)

"야 int 값이 3이잖아. 멍청아" 말고 -> "야 int의 리터럴이 3이잖아 하하하 우리 명확한 어휘를 구사하자구!"


2. 예약어 (reserved word)

(1) 설명

- 예약어는 보통 C/C++에서 제가 알고있기에는 키워드라고 불리는 것과 동일하다고 생각이 듭니다.

- 예약어란 C#언어에서 특정 기능을 위해서 미리 예약되어 있는 단어를 말합니다.


(2) 예시

- 자료형 : byte, int, double, float, char, string, bool . . . 

- 반복문 : for, while, do while, foreach . . . 

- 그 외 : if, new, break, null . . . 


이렇게 다양한 단어들을 예약어라고 하며, 예약어들은 변수이름으로 사용하지 않습니다. (못합니다)


3. 식별자 (identifier)

(1) 설명

- 식별자는 우리가 프로그래밍을 하면서 코드에서 우리가 마음껏 입맛에 맞게 작성할 수 있는 단어를 말합니다.

- 네임스페이스 이름, 변수 이름, 클래스 이름, 매개변수 이름 

- 우리가 고민해서 네이밍해야하는 그런것들을 모두 통칭해서 식별자 라고 부릅니다.


(2) 예시

- 코드로 한번 볼까요? 하이라이트 된 부분들이 식별자입니다.

namespace sample

{

    class Program

    {

        static void Main(string[] args)

        {

            int num = 10;

            int[] arr1 = new int[4] { 1, 2, 3, 4 };

            int[,] arr2 = new int[3, 2] { { 1, 2}, {3, 4}, { 5, 6 } };


            float f = 5.2f;

            double d = 10.5;

            decimal money = 200.944m;


            char c = 'C';

            string str = "blockdmask C# study";

        }

    }

}

반응형