-
C++ 변수 (4)C++ 2025. 3. 17. 20:07
#include <iostream> #define PIE 3.1415926535 using namespace std; int main() { // 원의 넓이 구하는 프로그램 // 반지름 * 반지름 * 파이 int r = 3; float s = r * r * PIE; cout << s << endl; return 0; }
기존 c언어에서는 상수값을 define으로 정의해서 사용하였다. 그러나 C++에선 상수를 다른 방법으로 사용할 수 있다.
#include <iostream> using namespace std; int main() { // 원의 넓이 구하는 프로그램 // 반지름 * 반지름 * 파이 const float PIE = 3.1415926535; int r = 3; float s = r * r * PIE; cout << s << endl; return 0; }
상수는 값이 바뀌어선 안된다. 그렇기 때문에 상수는 값을 선언하면서 초기화의 방식을 사용한다.
다음으로 형변환에 대해 설명하겠다.
#include <iostream> using namespace std; int main() { // 데이터형 변환 /* 1. 특정 데이터형의 변수에 다른 데이터형의 값을 대입했을 때 2. 수식에 데이터형을 혼합하여 사용했을 때 3. 함수에 매개변수를 전달할 때 */ char ch = 'M'; cout << (int)ch << " "<< int(ch) << endl; return 0; }
먼저 문자 M의 아스키코드값은 77이다.
기존에 C언어에서는 ( )를 사용해서 내가 원하는 타입으로 형변환을 하였다.
C++에서는 조금 다르다.
static_cast<typeName>을 사용해서 변경할 수 있다.
cout << static_cast<int>(ch)<< " "<< static_cast<int>(ch) << endl;
char형을 int형으로 변경하고싶기때문에 < >안에는 int가 들어간다.
예를들어,
#include <iostream> using namespace std; int main() { int a = 5; float b = 3.5; cout << a + b << endl; return 0; }
위 코드는 자료형이 다르다. 하나는 정수형, 하나는 소수형이기 떄문이다.
이럴때는 형변환을 해주는것이 좋다.
cout << static_cast<float>(a) + b << endl;
'C++' 카테고리의 다른 글
C++ 사용자 입력과 String (0) 2025.03.18 C++ 배열과 char 문자열 (0) 2025.03.18 C++ 변수 (3) (0) 2025.03.17 C++ 변수 (2) (0) 2025.03.17 C++ 변수 (1) (0) 2025.03.17