Presentation is loading. Please wait.

Presentation is loading. Please wait.

기본 자료형 순천향대학교 정보기술공학부 이 상 정. 자료형의 선언 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 3 자료형 선언 기본 자료형문자형 char 정수형 int 실수형 float double 형없음 void.

Similar presentations


Presentation on theme: "기본 자료형 순천향대학교 정보기술공학부 이 상 정. 자료형의 선언 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 3 자료형 선언 기본 자료형문자형 char 정수형 int 실수형 float double 형없음 void."— Presentation transcript:

1 기본 자료형 순천향대학교 정보기술공학부 이 상 정

2 자료형의 선언

3 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 3 자료형 선언 기본 자료형문자형 char 정수형 int 실수형 float double 형없음 void

4 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 4 자료형의 선언  기억클래스는 메모리 저장 방식을 지정  부호 수식자는 실수형에 적용 안됨  선언 예 auto signed long int num; => int num; extern long double; 기억클래스부호수식자크기수식자기본자료형 auto static extern register signed unsigned short long char int float double

5 문자와 char 자료형

6 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 6 char 자료형  char 형 변수는 문자와 정수 값을 저장하는 데 사용됨  메모리의 1 바이트에 저장됨 256 개의 값을 저장할 수 있음 signed char : -128 ~ +127 unsigned char: 0 ~ 255  영문자를 표시하기 이해 ASCII 문자 코드 사용 각 값은 메모리에 이진수로 저정됨 예 ) char c = 'a'; 변수 c 는 메모리 1 바이트에 01100001 로 저장됨 (ASCII 로 저장 ) 이 값을 계산하면 97 이 됨 (ASCII 값 )

7 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 7 ASCII 코드  ASCII 코드에서 문자 상수와 대응되는 정수 값 문자 상수 대응하는 값 문자 상수 대응하는 값 문자 상수 대응하는 값 문자 상수 대응하는 값 'a' 'b' 'c'... 'z' 97 98 99... 112 'A' 'B' 'C'... 'Z' 65 66 67... 90 '0' '1' '2'... '9' 48 49 50... 57 '&' '*' '+' 38 42 43

8 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 8 특수문자  인쇄할 수 없는 문자는 \ 를 사용하여 표현함 예를 들어, 수평 탭 문자는 문자 상수와 문자열에서 \t 로 표현됨 \t 가 \ 와 t 두 문자로 기술되지만, 이것은 한 문자임  프로그램 내에서 특별한 의미를 갖는 문자들이 본 래의 의미를 갖기 위해서도 \ 를 사용해야 함 큰따옴표를 포함하는 "abc" 라는 문자열은 "\"abc\"" 로 표기함 작은따옴표 문자 상수 ' 는 '\'' 로 표기함

9 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 9 특수문자 문자 이름기술 형태정수 값 경고 역슬래시 백스페이스 캐리지 리턴 큰따옴표 폼피드 수평 탭 개형 널 문자 작은따옴표 수직 탭 \a \\ \b \r \" \f \t \n \0 \' \v 7 92 8 13 34 12 9 10 0 39 11

10 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 10 1. 문자 A 출력 #include main() { putchar(65); putchar(0101); putchar(0x41); putchar( ‘ \n ’ ); putchar( ‘ A ’ ); putchar( ‘ \101 ’ ); putchar( ‘ \0x41 ’ ); putchar( ‘ \n ’ ); }

11 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 11 2. 영문 소문자를 대문자로 변환 프로그램 (p.128) #include int main() { int c; while ((c = getchar()) != EOF) { if (c >= ‘a’ && c <= ‘z’) putchar(c + ‘A’ – ‘a’); /* c + 65 – 97 */ else putchar(c); }

12 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 12 int 자료형  C 언어의 기본적인 자료형  int 형은 컴퓨터 사양에 따라 2 바이트 (= 16 비트 ) 나 4 바이트 (= 32 비트 ) 에 저장됨  값의 범위 4 바이트 워드 컴퓨터 최소 = -2 31 = -2147483648 최대 = +2 31 - 1 = +2147483647 2 바이트 워드 컴퓨터 최소 = -2 15 = -32768 최대 = +2 15 - 1 = +32767  정수 오버플로 값의 범위를 초과할 때 발생 ( 주의 필요 )

13 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 13 short, long, unsigned  short 자료형은 기억장소를 절약하고자 하는 경우에 사용  long 형은 큰 정수 값을 다룰 때 사용  short 형은 2 바이트에 저장되고, long 형은 4 바이트에 저장됨 4 바이트 워드 컴퓨터에서는 int 형과 long 형의 크기가 같고, 2 바이트 워드 컴퓨터에서는 int 형과 short 형의 크기가 같음  unsigned 형의 변수는 음수가 아닌 정수를 표현할 때 사용함

14 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 14 short, long, unsigned  정수 상수에 그 형을 명시하기 위해서는 접미사를 붙 일 수 있음  접미사가 붙지 않은 정수 상수의 형은 int, long, unsigned long 중 하나 임 시스템은 세 가지 형 중 그 정수 상수를 표현할 수 있는 첫 번 째 것을 선택하여 그 정수 상수의 형으로 함 예를 들어, 2 바이트 워드 컴퓨터에서 상수 32000 은 int 형이 고, 33000 은 long 형임  접미사 u 또는 U l 또는 L ul 또는 UL unsigned long unsigned long 37U 37L 37UL

15 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 15 실수형 ( 부동소수점형 )  실수 값을 다루기 위해 사용함  정수를 부동형 상수로 표현할 때에는 소수점 을 사용해야 함 상수 1.0 과 2.0 은 double 형이지만, 상수 3 은 int 형임  접미사 f 또는 F l 또는 L float long double 3.7F 3.7L

16 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 16 실수형 상수 표기법  십진 표기법 1.0 또는 1. 또는.0001  지수 표기법 1.234567e5 (= 1.234567 X 10 5 )  올바른 부동형 상수 3.14159, 314.159e-2F, 0e0, 1.  잘못된 부동형 상수 3.14,159 /* comma not allowed */ 314159 /* decimal point or exponential part needed */.e0 /* integer part or fractional part needed */

17 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 17 typedef  typedef 의 목적 긴 선언문을 축약해 쓸 수 있음 사용 목적에 맞게 형 이름을 결정할 수 있음 프로그램 이식을 쉽게 할 수 있게 함  예제 typedef char uppercase; typedef int INCHES, FEET; uppercase u; INCHES length, width

18 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 18 sizeof  객체를 저장하는 데 필요한 바이트 수를 알아내기 위해 사용  사용법 sizeof(object)  기본형들의 크기 비교 sizeof(char) = 1 sizeof(short) <= sizeof(int) <= sizeof(long) sizeof(signed) = sizeof(unsigned) = sizeof(int) sizeof(float) <= sizeof(double) <= sizeof(long double)

19 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 19 3. sizeof 연산자 예 (p.125) /* Compute the size of some fundamental types. */ #include int main(void) { printf("The size of some fundamental types is computed.\n\n"); printf(" char:%3d byte \n", sizeof(char)); printf(" short:%3d bytes\n", sizeof(short)); printf(" int:%3d bytes\n", sizeof(int)); printf(" long:%3d bytes\n", sizeof(long)); printf(" unsigned:%3d bytes\n", sizeof(unsigned)); printf(" float:%3d bytes\n", sizeof(float)); printf(" double:%3d bytes\n", sizeof(double)); printf("long double:%3d bytes\n", sizeof(long double)); return 0; }

20 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 20 수학함수  다음과 같은 수학 함수는 표준 라이브러리의 일부 분인 수학 라이브러리로 제공됨 sqrt() pow() exp() log() sin() cos() tan()  이러한 수학 함수를 사용하기 위해서는 를 포함시켜야 함  정수용 abs() 와 실수용 fabs() 를 구별해서 사용해 야 함

21 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 21 4. 수학함수 사용 예 (p.129) #include int main(void) { double x; printf("\n%s\n%s\n%s\n\n", "The square root of x and x raised", "to the x power will be computed.", "---"); while (1) { /* do it forever */ printf("Input x: "); scanf("%lf", &x);

22 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 22 4. 수학함수 사용 예 if (x >= 0.0) printf("\n%15s%22.15e\n%15s%22.15e\n%15s%22.15e\n\n", "x = ", x, "sqrt(x) = ", sqrt(x), "pow(x, x) = ", pow(x, x)); else printf("\nSorry, your number must be nonnegative.\n\n"); } return 0; }

23 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 23 형 변환  필요에 따라 수식을 구성하는 자료 형들은 변환이 일어남  형 변환 자동 형 변환 강제 형 변환 ( 캐스트 )  자동 형 변환 여러가지 형으로 혼합된 경우 큰 자료형으로 변환 int < unsigned int < long int < float < double < long double

24 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 24 자동 형 변환 선언 char c; short s; int i; long l; unsigned u; unsigned long ul; float f; double d; long double ld; 수식형 형 c - s / i u * 2.0 - i c + 3 c + 5.0 d + s 2 * i / l int double int double long u * 7 - i f * 7 - i 7 * s * ul ld + c u - ul u - l unsigned float unsigned long long double unsigned long system- dependent

25 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 25 캐스트  명시적인 변환  캐스트 예제 (double) i (long) ('A' + 1.0) x = (float) ((int) y + 1) (double) (x = 77)

26 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 26 16 진 상수와 8 진 상수  C 원시 코드에서 0 으로 시작하는 양의 정수 상 수는 8 진 정수이고  0x 또는 0X 로 시작하는 양의 정수 상수는 16 진 정수임

27 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 27 5. 상수 예 (p.139) /* Decimal, hexadecimal, octal conversions. */ #include int main(void) { printf("%d %x %o\n", 19, 19, 19); /* 19 13 23 */ printf("%d %x %o\n", 0x1c, 0x1c, 0x1c); /* 28 1c 34 */ printf("%d %x %o\n", 017, 017, 017); /* 15 f 17 */ printf("%d\n", 11 + 0x11 + 011); /* 37 */ printf("%x\n", 2097151); /* 1fffff */ printf("%d\n", 0x1FfFFf); /* 2097151 */ return 0; }

28 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 28 과 제과 제  예제 프로그램 1-5 까지 작성하고 실행하여라.  for 문을 이용하여 ASCII 코드 33 에서 110 까지 의 문자를 출력하는 프로그램을 작성하여라. ( 출력은 “ASCII 코드 값 => 문자 ” 로 표시 )


Download ppt "기본 자료형 순천향대학교 정보기술공학부 이 상 정. 자료형의 선언 2003-1- 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 3 자료형 선언 기본 자료형문자형 char 정수형 int 실수형 float double 형없음 void."

Similar presentations


Ads by Google