결론적으로, 

  상수   / constant : 한번 정하면 바뀌지 않는 값. 원하면 수정할 수 있는 변수와 반대.
리터럴 /    literal   : 어떤 것을 나타내는 문자 그대로의 값. 1, 2.3431, true 처럼, 내가 표현하는 값 그 자체.

 


위키백과에 작성된 바로는,

더보기

상수는 '수식에서 변하지 않는 값'

리터럴은 '소스코드의 고정된 값을 나타내는 표기법'..

 

 

두 단어의 의미가 같은 부분은 '변하지 않는 것' 밖에 없다.

사실은 오버로딩과 오버라이딩처럼 다른 부류의 단어라고 이해했다.

 

상수

int a = 1;	   //변수
const int a = 1;  //상수

 

변수든 상수든, 값을 저장할 수 있는 공간인 것은 똑같다.

상수는 다시 수정할 수가 없을 뿐이지.

 

 

리터럴

리터럴의 언어적 의미는 아래와 같다.

 

결국, 아래처럼 문자 그대로의 값을 리터럴이라고 한다.

1
2.3431
true

 

 

Q. 그럼 리터럴에선 어떤 부분이 변치 않는 값인가?

A.  2라는 값과, 1+1이라는 값이 같은지 생각해보면 될 것 같다.

 

     물론, 대부분은 수학적으로 1+1 = 2라고 생각하지만,

     어떤 사람들은 1+1 = 1 이라고 할 수도 있는 것이다.

    그렇기 때문에 1이라는 값은 변치 않는 값이라고 이야기 한다.

  

 

 

 

결론

변수가 저장될 가상의 메모리 영역.

 

 

검증할 수 없는 수많은 개인 블로그를 보며 정리를 해보자면,

변경할 수 없는 값이 들어갈 수 있는 공간은 '상수'

 

변수에 들어갈 수 있는 '문자 그대로의 값' 은 리터럴이다.

 


P.S. TCP SCHOOL페이지에서는, 전자를 '심볼릭 상수', 후자를 '리터럴 상수' 라고 구분한다.

'ㄱ. 걱정과 공부 > 오늘의 한웅큼' 카테고리의 다른 글

온 프레미스와 오프 프레미스.  (0) 2024.08.21
SQL과 NoSQL  (9) 2024.07.24
JSON 과 XML.  (0) 2024.06.20
WBS(Work Breakdown Structure)  (0) 2024.06.15

+ Recent posts