본문 바로가기
Software/C++

[C++ 기초] 5. const 제한자와 데이터형 변환

by 리미와감자 2023. 3. 7.
728x90
반응형
#include <iostream> // 전처리 지시자
// #define PIE 3.1415926535 C style 상수 정의 방법
using namespace std; // 없으면 std::을 붙여서 함수를 사용해야함

//원의 넓이를 구하는 프로그램
//반지름 * 반지름 * 파이
int main() { // main의 이름을 가지고 있는 함수가 있어야 한다.

	//1.상수
	//(1)바뀔 필요가 없는 수
	//(2)바뀌어서는 안되는 수

	const float PIE = 3.1415926535;

	int r = 3;
	float s = r * r * PIE;

	cout << s << endl;


	//2. 데이터형 변환
	//(1) 특정 데이터형의 변수에 다른 데이터형의 값을 대입했을 때
	//(2) 수식에 데이터형을 혼합하여 사용했을 때
	//(3) 함수에 매개변수를 전달할 때

	int a = 3.141592;

	cout << a << endl; // 3으로 출력됨(float -> int로 자동변환)

	char ch = 'M';
	cout << (int)ch << " " << int(ch) << endl; // 강제 형변환

	// C++ 데이터형 변환 연산자 : static_cast(typeName)
	cout << static_cast<int>(ch) << endl;

	return 0;
}

 

결과

더보기

28.2743
3
77 77
77

 

 

 

const 제한자

  • 상수 : 바뀔 필요가 없는 수. 바뀌어서는 안되는 수.
  • C Style : #define PIE 3.1415926535
    C++ Style : const float PIE = 3.1415926535 -> 자료형까지 정의해주어야함
  • 반드시 초기화를 해주어야한다. 대입 불가능.

 

 

 

데이터형 변환

  • 데이터형 변환이 되는 경우
    (1) 특정 데이터형의 변수에 다른 데이터형의 값을 대입했을 때. ex) int a = 3.141592;
    (2) 수식에 데이터형을 혼합하여 사용했을 때
    (3) 함수에 매개변수를 전달할 때
  • 강제 형변환
    (1) typeName(a)
    (2) (typeName)a
    (3) static_cast<typeName>(a)
728x90
반응형

'Software > C++' 카테고리의 다른 글

[C++ 기초] 6. 배열과 문자열  (1) 2023.03.10
[C++ 기초] 5. 산술연산자와 auto형  (0) 2023.03.08
[C++ 기초] 4. 문자형과 Bool형  (0) 2023.03.07
[C++ 기초] 3. 정수형과 실수형  (0) 2023.03.07
[C++ 기초] 2. 변수  (1) 2023.03.06

댓글