constants c
유형과 함께 C ++의 상수에 대한 모든 것을 살펴보십시오.
이것에 쉬운 C ++ 교육 자습서 , 이전 자습서에서 C ++의 변수 및 변수 범위에 대해 설명했습니다. 변수에 할당 된 값은 프로그램 전체에서 변경 될 수 있음을 배웠습니다.
때로는 요구 사항에 따라 프로그램에서 변경하거나 수정할 수없는 일부 값이 필요합니다. 그러나 이러한 값이 변수에 할당되면 아무도 이러한 변수의 값을 변경하지 않을 것이므로 보장 할 수 없습니다.
이는 변수 엔티티 자체의 특성으로 인해 값이 일정 할 수 없기 때문입니다.
학습 내용 :
개요
이러한 상황에서는 일정하게 유지되는 값을 할당 할 수있는 하나의 개체가 필요합니다. 이 값을 변경하려는 시도가 있어도 컴파일러는 오류를 생성합니다. 이 엔티티를 상수 / 리터럴이라고합니다. 이러한 상수에 대한 특정 이름이 있으므로 심볼릭 상수라고도합니다.
반대로 변수에 할당 된 상수 값을 리터럴 상수라고합니다. 상수는 모든 데이터 유형이 될 수 있습니다. C ++의 상수는 값이 변경되지 않는다는 점을 제외하고는 변수와 동일한 방식으로 처리됩니다.
상수의 데이터 유형
C ++에서 상수는 모든 데이터 유형이 될 수 있습니다. 이들은 모두 '명명 된 상수'입니다. 즉, 각 상수에는 이름이 있습니다.
다음은 C ++의 상수 유형입니다.
# 1) 정수 상수
소수점없는 정수로 구성된 상수입니다. 또한 숫자가 서명되었는지, 서명되지 않았는지 또는 긴지 등에 따라 관련 접미사를 가질 수 있습니다.
또한 이러한 상수는 10 진수, 8 진수 또는 16 진수와 같은 다른 기수 또는 기수를 가질 수 있습니다. 이 경우 상수에 접두사를 지정합니다. 8 진수는 0, 16 진수는 0x 등입니다. 10 진수 상수에는 접두사를 지정하지 않습니다.
다음은 C ++에서 유효한 정수 상수의 몇 가지 예입니다.
0512 // 8 진수
0xFF // 16 진수
36 // 십진수
50L // 긴
24U // 부호 없음
어떤 음악 다운로더가 최고인가
50UU와 같은 접두사 또는 접미사는 상수를 무효화하므로 반복 할 수 없습니다.
# 2) 부동 소수점 상수
부동 소수점 리터럴은 소수점이있는 리터럴입니다. 이러한 상수는 10 진수 형식 또는 지수 형식으로 나타낼 수 있습니다. 소수점 표기법을 사용할 때는 소수점, 지수 또는 둘 다를 포함해야합니다.
지수 형식의 표현에는 정수 부분, 분수 또는 둘 다를 포함해야합니다. e 또는 E로 부호있는 지수를 나타내야합니다.
유효한 부동 소수점 리터럴의 몇 가지 예는 다음과 같습니다.
3,142
3142E -5L
1,143
# 3) 문자 리터럴
이러한 리터럴은 문자 유형이며 일반적으로 작은 따옴표 (‘‘)로 묶여 있습니다. 'L'로 시작하는 문자 리터럴은 와이드 문자 리터럴이며 wchar_t (와이드 문자) 유형으로 저장됩니다. 다른 문자 리터럴은 문자 데이터 유형에 저장됩니다.
와이드 문자 리터럴은 MFC와 같은 GUI 프로그래밍이나 STL을 포함한 다른 고급 프로그래밍에서 주로 사용됩니다.
문자 리터럴의 몇 가지 예는 다음과 같습니다.
‘xyz’
테스트 계획 및 테스트 전략 차이
L’ M’
위의 문자 리터럴 예제는 일반 문자입니다. 몇 개의 문자에 특별한 의미를 부여하는 '이스케이프 시퀀스'라는 문자 리터럴도 있습니다. 개행 문자, 탭 등과 같은 작업을 나타내는 데 사용됩니다.
아래 표에는 C ++에서 사용되는 이스케이프 시퀀스가 나열되어 있습니다.
탈출 시퀀스 | 의미 |
---|---|
에프 | 폼 피드 |
\ | 캐릭터 |
’ | ' 캐릭터 |
' | ' 캐릭터 |
? | ? 캐릭터 |
에 | 벨 또는 경고 |
b | 역행 키이 |
엔 | 개행 |
아르 자형 | 캐리지 리턴 |
티 | 가로 탭 |
V | 수직 탭 |
ooo | 8 진수 |
xhh ... | 16 진수 (하나 이상의 숫자) |
이러한 이스케이프 시퀀스는 주로 C ++에서 서식을 지정하는 동안 사용되며 하나 이상의 이스케이프 시퀀스의 조합으로 사용할 수 있습니다.
다음 C ++ 프로그램은 이러한 이스케이프 시퀀스 중 일부의 사용법을 보여줍니다.
#include #include using namespace std; int main() { cout<<'
C++ program to demonstrate escape sequences'; cout<<'
Hello there 'STH''; }
산출:
이스케이프 시퀀스를 보여주는 C ++ 프로그램
안녕하세요‘STH’
위의 코드에서 알 수 있듯이 이러한 이스케이프 시퀀스를 조합으로 사용하여 출력 형식을 지정할 수도 있습니다.
# 4) 문자열 리터럴
문자 리터럴과 달리 문자열 리터럴은 큰 따옴표 ( '')로 묶입니다. 문자열 리터럴에는 간단한 문자, 이스케이프 시퀀스 또는 기타 범용 문자도 포함될 수 있습니다.
다음은 유효한 문자열 리터럴 중 일부입니다.
오늘 사용되는 자바는 무엇입니까
“Hello, World”
'안녕하세요, /
세계'
“안녕하세요”“,”“세계”
위의 모든 예는 동일한 문자열을 나타내지 만 다른 방식으로 표현됩니다.
위에서 설명한 리터럴의 데이터 유형 외에도 상수를 나타내는 키워드 'true'및 'false'를 사용하는 부울 리터럴도 있습니다.
상수 정의
C ++에서는 상수를 정의하는 두 가지 방법이 있습니다.
# 1)‘#define’전 처리기 지시문 사용
전 처리기 지시어 '#define'을 사용하여 상수를 정의 할 수 있습니다.
아래에 예가 나와 있습니다.
#include #include #define PI 3.142 #define RADIUS 5 using namespace std; int main() { cout<<'
Area of circle: '< 산출:
원의 면적 : 78.55
원의 둘레 : 31.42
위의 프로그램에는“#define”지시문을 사용하여 정의 된 두 개의 상수 인 PI와 RADIUS가 있습니다. 그런 다음 주 함수 내에서 이러한 상수를 사용하여 원의 면적과 둘레를 계산합니다. 프로그램에서 상수 사용에 유의하십시오.
# 2) 'const'키워드 사용
상수를 정의하는 또 다른 방법은 변수 선언과 함께 'const'키워드를 사용하는 것입니다.
const 유형 변수 = 값;
따라서 'RADIUS'라는 상수를 정의하려면 다음과 같이합니다.
const int RADIUS = 5;
이러한 유형의 상수 정의를 설명하기 위해 위에 제공된 동일한 프로그램을 사용합니다.
#include #include using namespace std; int main() { const float PI = 3.142; const int RADIUS = 5; cout<<'
Area of circle: '<이 프로그램에서 볼 수 있듯이 'const'키워드를 사용하여 두 개의 상수를 정의합니다.
위 코드의 main 함수에 상수를 정의했습니다. 또는 모든 함수보다 이러한 상수를 전역 적으로 정의 할 수도 있습니다. 이 경우 이러한 상수는 전역 범위를 가지며 '전역 상수'라고합니다.
노트 : 두 프로그래밍 예에서 볼 수 있듯이 대문자로 상수를 정의하는 것이 좋은 프로그래밍 방법입니다.
결론
이것으로 상수에 대한이 튜토리얼을 마칩니다. 상수는 변경되지 않은 특정 수학적 값을 정의 할 때 유용합니다.
다가오는 자습서에서는 다양한 범위에서 변수를 정의하고 사용할 수있는 C ++ 유형 한정자 및 저장소 클래스에 대해 알아 봅니다.
추천 도서
- STL의 목록
- STL의지도
- STL의 우선 순위 대기열
- VBScript의 상수, 연산자 및 연산자 우선 순위
- STL에서 설정
- VBScript 파일 개체 : CopyFile, DeleteFile, OpenTextFile, 읽기 및 쓰기 텍스트 파일
- 초보자 테스터를위한 소프트웨어 테스트 조언
- 예제와 함께 C ++에서 거품 정렬