정수 자료형 (Data type for Integer)


C언어에서는 정수를 저장할 수 있는

자료형으로 다음 4가지를 제공한다.

주의할 것은 long형은 Windows 운영체제에서는 int와 동일하다.

다른 운영체제에서는 다를 수도 있으니, 경우에 따라 확인해서 사용해야 한다.

자료형 

 설명

저장가능한 최소값 

저장가능한 최대값

 char

 1 바이트 크기를 갖는다.

 -128

127 

 short int

혹은

short

 2 바이트 크기를 갖는다.

-32,768 

32,767 

 int 

 4 바이트 크기를 갖는다.

  -2,147,483,648

 2,147,483,647

 long

 Windows에서는 int와 동일하다.

  -2,147,483,648

 2,147,483,647 


sizeof( )

데이터형이 갖는 크기를 알려면

sizeof( )연산자를 사용하면 된다.

데이터형 이름을 써도 되고, 그 데이터형의 변수 이름을 써도 된다.


데이터형의 최소값과 최대값

각 데이터형이 가질 수 있는 최소값과 최대값을 알려면, 

#include <limits.>를 헤더파일에 포함시키고 (아래코드의 line 2 참조),

미리 지정된 값 (CHAR_MIN, CHAR_MAX, 등,, 아래 코드 확인)을

출력해 보면된다.


아래 프로그램은 위의 4가지 자료형의 크기, 최소, 최대값을

출력해주는 프로그램이다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <limits.h>

int main(void)
{
	printf("char size is %d\n", sizeof(char));
	printf("char min %d, max %d\n\n", CHAR_MIN, CHAR_MAX);

	printf("short size is %d\n", sizeof(short));
	printf("short min %d, max %d\n\n", SHRT_MIN, SHRT_MAX);

	printf("int size is %d\n", sizeof(int));
	printf("int min %d, max %d\n\n", INT_MIN, INT_MAX);

	printf("long size is %d\n", sizeof(long));
	printf("long min %d, max %d\n\n", LONG_MIN, LONG_MAX);
	return 0;
}


실행결과는 아래와 같다.




위의 내용을 동영상에서 설명하고 있습니다.



반응형
LIST


매크로 (Macro) #define

프로그래밍하면서

어떤 숫자는 너무 길거나 복잡해서 불편한 경우가 있다.

예를 들어,

원주율 파이(pi)같은 것이 그런 것이다.

3.141592.....

이걸 다 치고 있으려면 시간도 많이 걸리고,

오타날 확률도 있다.

그리고,

숫자가 짧긴 하지만,

다른 사람이 보기에 그 숫자가 무엇을 의미하는지가

직관적이지 않을 때가 있다.

예를 들어,

13.

무슨 뜻일까?

주민번호 자릿수 이다.


그래서, 

C언어에서는 

특정 수에 이름을 붙여서 사용할 수 있도록 하는

#define 매크로라는 것을 제공하고 있다.


아래 프로그램을 보면 쉽게 이해간다.

#define MYNUMBER 15

#define이라고 쓰고,

내가 사용하고 싶은 이름을 쓰고,

그 이름에 해당하는 숫자를 쓰면 된다.

이 때, 

#define 매크로 뒤에는 세미콜론을 붙이지 않는다.  


일단, MYNUMBER가 15로 정의되면,

이후 프로그램에서는 15대신에 MYNUMBER를 붙여서 쓰면된다.

그리고,

이런 #define 매크로는 원하는 만큰 정의해서 쓰면 된다.


데이터 타입, char

지금까지 데이터타입은 int만 사용해 왔는데,

새로운 것을 하나 더 배워보자.

하나의 문자를 저장할 수 있는 char형이다.

이 때 문자는 알파벳, 숫자, 각종 기호 등, 한 글자로 이루어진 것이면 된다.

그리고 문자는 작은 따옴표로 감싸서 표시한다.

char c;

char d, e;

c = 'a';

d = '9';

e = '+';

문자형 변수 c를 선언하고,

여기에 문자 'a'를 저장하고 있다.

그리고

변수 d에는 숫자 문자 '9'를 저장하고 있다.

이 때 9는 숫자가 아님을 주의하자.

변수 e에는 기호 문자 '+'를 저장하고 있다.


문자 출력을 위한 형식지정자: %c

문자형 변수의 값을 printf를 이용해서

출력하기 위해서는

'%c'라는 형식지정자를 이용해야 한다.



특수문자: \n, \t, \a,

줄바꿈을 할 때 사용하는 '\n'을 기억할 것이다.

이것은 문자인데, 특수한 역할을 하기 때문에

앞에다가 back-slash 기호인 '\'를 붙여서 사용한다.


이런 종류의 특수문자들이 몇 개 있는데,

두 개만 더 소개하면,

\t는 탭 문자라서, 이것을 출력하면 탭 크기만큼 띄어쓰고,

\a는 alarm문자라서, 이것을 출력하면 '삑'소리가 난다.

아래 동영상을 보면 이 소리를 들어볼 수 있다. 



C언어의 데이터형인 char에 대해서 설명합니다.



반응형
LIST

+ Recent posts