2013-01-01 2 views
10

가능한 중복 : C++에 대한 문헌을 읽을 때 C++에서 "리터럴"이란 무엇입니까?


What does the word “literal” mean?

는 종종, 나는 단어 "문자"를 발생합니다. 이 용어가 C++에서 정확히 무엇을 의미하는지는 내게 불분명하다.

+2

http://en.wikipedia.org/wiki/Literal_%28computer_programming%29 –

+0

** ** http://stackoverflow.com/questions/485119/what-does-the-word-literal- mean –

+0

참고 : [C++/CLI'literal' 키워드] (https://msdn.microsoft.com/en-us/library/5yzft952.aspx)와 혼동하지 마십시오. "변수로 표시된 (데이터 멤버) :/clr 컴파일의 리터럴은 정적 const 변수의 원래 동등한 것입니다. " – jrh

답변

32

리터럴은 변수 또는 함수 호출을 통해 간접적으로 표시되는 것이 아니라 코드에 직접 표시되는 일부 데이터입니다. 여기

일부 예 행당 하나 : 프로그램에 의해 수정 될 수없는 문자를 구성

42 
128 
3.1415 
'a' 
"hello world" 

데이터 있지만있어서 사용되는 변수로 복사 될 수

int a = 42; // creates variable `a` with the same value as the literal `42` 

This concept is by no means unique to C++.

"리터럴"이라는 용어는 데이터에 literally을 쓰거나, 정확히 말하면 변수 이름 뒤에 "숨겨진"것이 아니라 정확히 쓰여졌다는 사실에서 비롯됩니다.

+2

+1 좋은 답변입니다. – AminM

6

위키 백과에서 literals에 대해 신속하게 알려줍니다.

C 또는 C++ 소스 코드에서 1234, nullptr (최근 C++), "abcd"은 리터럴입니다.

+2

'nullptr'은 키워드입니까? –

+7

@OliCharlesworth : "nullptr : 포인터 리터럴은 nullptr 키워드입니다."(§2.14.7) - 둘 다 나타납니다. – Mat

+0

@Mat : 오, 재미 있어요! –