C#

8. C# 상수(데이터 타입)

지니 2017. 2. 1. 01:14
반응형




인터넷강의 보고 따라하지만.. 강의 내용대로 안되서 다시 정리해 봅니다.


배우면서 쓰는글이기 때문에 정답이 아닐수 있습니다.



- 숫자  

- 문자

- 논리

- 객체


==================================================

//C# 소스 코드의 구조

//namespace => class => method

namespace myNameSpace

{

    class MyClass

    {

        public static void Main()

        {

            //상수와 변수


            //숫자 int , uint , long

            //문자 String 

            //논리 boolean , bool // true  or false



            int iTmp = 10;

            string sTmp = "a";

            System.Console.WriteLine(iTmp + sTmp);


            //10a 출력됨

            //C 언어   = a의 아스키코드(97) + 10 = 107 출력이지만

            //C#       = a10 C#은 변수의 데이터 타입을 엄격하게 관리한다.



            //----------------------------- 정수 (숫자) 음의정수 , 0 , 양의정수 ------------------------------//



           int iTmp2 = 2000000000; //20억 --> Binary(2진) 111 0111 0011 0101 1001 0100 0000 0000   == 31 자리

            //int iTmp3 = 3000000000; //30억 오류발생  --> Binary(2진)  딱 봐도 32바이트를 넘을걸로보임

            // represents a 32-bit unsigned integer 

            //===>  int -> uint 로 수정

            //uint iTmp3 = 3000000000;  // 오류 안남

            //uint iTmp3 = 43000000000;  // 43억 오류발생 --> 이것도 int 와 마찬가지로 최대 표현 정수범위를 초과해버림

             long iTmp3 = 43000000000;  // 오류안남

                                        //즉 , 정수의 범위 int < uint < long 순으로 커진다


            //----------------------------- 정수 (숫자) 음의정수 , 0 , 양의정수 ------------------------------//





            //----------------------------- 소수 ------------------------------//

            //float fTmp = 0.1; // float 로 그냥 쓸 경우 오류발생

            float fTmp = 0.1f; // 소수를 기본 double 로 변환하기때문에 , float를 사용하고 싶을땐 뒤에 'f' 를 붙여준다.

            double bTmp = 0.1;


            //----------------------------- 소수 ------------------------------//



            //----------------------------- 논리(true, false) ------------------------------//

            bool bolTmp = true;   // 논리형 변수

            object oTmp; //object <== 객체를 변수처럼 사용하고 싶을때..!


            //----------------------------- 논리(true, false) ------------------------------//






            System.Console.WriteLine(sizeof(int));

            

            



            System.Console.ReadKey();

        }

    }


}



==================================================



위 프로그램에서 처럼 각 상수들이 존재한다.


또한 데이터의 길이에 따라 지정할 상수 또한 달라진다.


상수를 잘 못 지정할 시 예상치 못한 오류가 발생된다.


녹색 글씨로 된 부분을 보고 이해된다면 , C#의 상수에 대한 이해가 된것이다.



반응형