ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 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
Designed by Tistory.