어쩌다 코린이

[c언어이론]실수자료형, 문자자료형, 상수와 리터럴 본문

언어공부/C

[c언어이론]실수자료형, 문자자료형, 상수와 리터럴

2da1 2020. 7. 11. 18:56

1. 실수자료형

   -float: 값 할당 시 숫자 뒤에 f를 붙인다.

   -double: 값 할당 시 숫자뒤에 아무것도 붙이지 않는다.

   =>float과 double 출력시에는 %f로 출력한다

       (f는 floating point 부동소수점의 약어이다.)

   -long double: 값 할당 시 숫자 뒤에 l을 붙인다.

                      long double 출력 시 %Lf로 출력한다.

출력결과

1.1 실수 자료형의 크기 구하기 

앞서 올렸던 글에서 자료형의 크기를 구했던 것 처럼 sizeof 연산자를 사용하면 된다.

출력결과

float는 4바이트, double long double은 8바이트이다.

 

2. 문자자료형(char)

  -c언어에서는 정수자료형인 char를 이용하여 문자 한개를 저장한다.

  -char는 서식지정자 %c로 출력한다.( 문자 character의 약어)

    만약, 서식지정자 %d로 출력하게 되면 char변수에 저장된 정숫값(ASCII 코드값)이 출력된다.

출력결과

2.1 문자형 연산하기

출력결과

'a' + 1과 같이 작은따옴표로 묶은 문자는 정수를 더하거나 뺄수 있다.

a의 아스키코드 값은 97이므로 97+1=98이고 아스키코드 값 98에 해당하는 문자는 b이다.

 

3. 상수

  :상수란 변하지 않는 값을 의미한다.

   변수는 선언한 후에도 값을 계속 바꿀수 있지만 상수는 처음 선언시에만 값을 할당할 수 있고 이후엔 바꿀수 없다.

   -상수vs리터럴

    const int con1=10;

    위 코드에서 con1은 상수, 10은 리터럴이다.

    리터럴이란 c언어에서 값 그자체를 의미하고 상수는 변수처럼 리터럴이 저장된 공간을 의미한다.

 

3.1 리터럴의 사용

위 소스코드에서 10, 'a', "Hello", 0.1f 처럼 값을 그대로 입력한것이 리터럴이다. 순서대로 정수 리터럴, 문자 리터럴, 문자열 리터럴, 실수 리터럴이다.

출력결과

3.2 상수 사용하기

   -const  자료형  상수이름 = 값; 형태로 사용한다.

    상수는 반드시 선언과 동시에 값을 할당하여 초기화 해야한다. (만약 초기화 하지 않으면 컴파일 에러가 발생한다.)

    상수도 변수처럼 printf에서 상수이름을 사용하여 저장된 값을 출력할 수 있다.

출력결과