5장. 상수와 기본 자료형. 5장. 상수와 기본 자료형 5-1 C 언어가 제공하는 기본 자료형 자료형(data type) 기본 자료형 사용자 정의 자료형 int val; "선언할 변수의 특징을 나타내기 위한 키워드" 기본 자료형 기본적으로 제공이 되는 자료형 사용자.

Slides:



Advertisements
Similar presentations
3. 자료형. 담당교수 : 이 성 우 C++ 프로그래밍 상수와 변수 (3) 1. 변수 (variable)  프로그램 수행 도중에 자료  변수를 위해 은 변하지 않음  선언 시에 반드시 그. ※ 저장 정보의 구성 ① 정보의 종류 ② 저장 값 ③ 저장 위치 int Num.
Advertisements

03 변수와 자료형 세종대학교 최옥경 교수 참고 : 한빛미디어 뇌를 자극하는 C, INFINITY Perfect C.
기본 자료형 순천향대학교 정보기술공학부 이 상 정. 자료형의 선언 컴퓨터프로그래밍 1 순천향대학교 정보기술공학부 이 상 정 3 자료형 선언 기본 자료형문자형 char 정수형 int 실수형 float double 형없음 void.
YES C 제 1 장 C 언어의 개요 1/34 제 1 장 C 언어의 개요 문봉근. YES C 제 1 장 C 언어의 개요 2/34 제 1 장 C 언어의 개요 1.1 프로그램과 C 언어의 특징 1.2 C 언어의 프로그램 구성 1.3 비주얼 C++ 통합 환경 들어가기.
3 8051을 위한 C 언어 프로그래밍.
프로그래밍1 및 실습 (C언어) - 3장 기본자료형 (3.6부터 끝까지) -
Vision System Lab, Sang-Hun Han
제 3 장 변수와 자료형.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
슬라이드 1~21까지는 각자 복습! 슬라이드 22부터는 수업시간에 복습
Power C++ 제6장 포인터와 문자열.
쉽게 풀어쓴 C언어 Express 제5장 수식과 연산자 C Express Slide 1 (of 34)
C++ Espresso 제1장 기초 사항.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
4장: 자료형과 수식.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
6장. printf와 scanf 함수에 대한 고찰
누구나 즐기는 C언어 콘서트 제4장 수식과 연산자.
제 18 강 데이터 타입 타입, 변환, 캐스팅 shcho.pe.kr.
연산자 대입 연산자 산술 연산자 관계 연산자 논리 연산자 비트 연산자 콤마 연산자 축약 연산자 sizeof 연산자
변수와 자료형.
C 9장. 구조체 #include <stdio.h> int main(void) { int num;
기초C언어 제3주 C프로그램 구성요소, 변수와 자료형 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
Chapter 4 – 연 산 자 Outline 4.1 산술 연산자 4.2 관계 연산자 4.3 동등 연산자 4.4 논리 연산자
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
C 프로그래밍.
변수와 자료형.
제 2 장 변수와 상수.
프로그래밍2 및 실습 C언어 기반의 C++ 2.
제 3 장 상수와 변수
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
4주차: Data Types and Functions
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
23강 API - II - 약방의 감초 Random 클래스 - Scanner 및 Sysout - Wrapper 클래스의 이해
adopted from KNK C Programming : A Modern Approach
2장 표준 입출력 표준 입출력 함수의 종류 형식화된 입출력 문자 입출력 문자열 입출력.
제2장 데이터형과 표준 입출력문 문봉근.
컴퓨터의 기초 제 2강 - 변수와 자료형 , 연산자 2006년 3월 27일.
상수와 기본 자료형.
Java의 정석 제 2 장 변수(Variable) Java 정석 남궁성 강의
컴퓨터 프로그래밍 기초 - 4th : 수식과 연산자 -
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 05. 상수와 기본 자료형.
프로그래밍 원리 Chapter 04 자료 처리와 연산자 신한대학교 IT융합공학부 박 호 균.
Chapter 04 자료 유형.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
컴퓨터 프로그램 제2,3장 간단한 C 프로그램 김 문 기.
Chapter 04. 데이터의 표현과 연산(Ⅱ).
실습과제 1(조건문, ) 표준입력으로 수축기 혈압을 입력 받아 그에 따른 적당한 표현을 화면에 출력하는 프로그램을 if-else 문을 이용하여 작성.
제 3장 데이터형과 연산자 Hello!! C 언어 강성호 김학배 최우영.
학습목표 Chapter 2-1. 변수와 포인터 변수의 선언과 변수에 대한 메모리 할당을 살펴본다.
-Part2- 제1장 1차원 배열이란 무엇인가.
Part 06 세상을 변화시키는 연산자 안산1대학 디지털정보통신과 임 성 국.
-Part1- 제6장 자료형이란 무엇인가.
adopted from KNK C Programming : A Modern Approach
자바 5.0 프로그래밍.
컴퓨터 프로그램은 여러 기능의 복합체이다. 라이브러리 함수와 사용자 정의 함수
C언어 프로그래밍의 이해 Ch03. 기본 자료형, 변수와 상수.
3주차: Control Flow and Others
박성진 컴퓨터 프로그래밍 기초 [03] 변수와 자료형 박성진
Spring, 2019 School of CSE Pusan National University
17장. 포인터의 포인터.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
C.
C 프로그래밍은 매우 도전적인 작업이다. 도전의 이면에 철저한 준비와 체계적인 노력
개정판 누구나 즐기는 C언어 콘서트 제3장 변수와 자료형 출처: pixabay.
11장. 1차원 배열.
Presentation transcript:

5장. 상수와 기본 자료형

5-1 C 언어가 제공하는 기본 자료형 자료형(data type) 기본 자료형 사용자 정의 자료형 int val; "선언할 변수의 특징을 나타내기 위한 키워드" 기본 자료형 기본적으로 제공이 되는 자료형 사용자 정의 자료형 사용자가 정의하는 자료형 : 구조체, 공용체 int val;

5-1 C 언어가 제공하는 기본 자료형 기본 자료형 종류와 데이터의 표현 범위 자료형(data type) 할당되는 메모리 크기 표현 가능한 데이터의 범위 정 수 형 char 1 바이트 -128 ~ +127 short 2 바이트 -32768 ~ +32767 int 4 바이트 -2147483648 ~ +2147483647 long 실 float 3.4*10-37 ~ 3.4*10+38 double 8 바이트 1.7*10-307 ~ 1.7*10+308 long double 8 바이트 혹은 그 이상 차이를 많이 보임

5-1 C 언어가 제공하는 기본 자료형 다양한 자료형이 제공되는 이유 데이터의 표현 방식이 다르기 때문 정수형 데이터를 표현하는 방식 실수형 데이터를 표현하는 방식 메모리 공간을 적절히 사용하기 위해서 데이터의 표현 범위를 고려해서 자료형 선택 작은 메모리 공간에 큰 데이터를 저장하는 경우 데이터 손실이 발생할 수 있음

5-1 C 언어가 제공하는 기본 자료형 sizeof 연산자 피연산자의 메모리 크기를 반환 피연산자로 자료형의 이름이 올 경우 괄호를 사용 그 이외의 경우 괄호의 사용은 선택적 예제 sizeof.c 참조 int main(void) { int val=10; printf(“%d”, sizeof val ); // 변수 val의 메모리 크기 출력 printf(“%d”, sizeof(int) ); // 자료형 int의 메모리 크기 출력 . . . . .

5-1 C 언어가 제공하는 기본 자료형 자료형 선택의 기준 정수형 데이터를 처리하는 경우 컴퓨터는 내부적으로 int형 연산을 가장 빠르게 처리, 따라서 정수형 변수는 int형으로 선언 범위가 int형 변수를 넘어가는 경우 long형으로 선언 값의 범위가 –128 ~ +127 사이라 할지라도 int형으로 선언 예제 char_add.c 참조

5-1 C 언어가 제공하는 기본 자료형 자료형 선택의 기준 실수형 데이터를 처리하는 경우 선택의 지표는 정밀도 정밀도란 오차 없이 표현 가능한 정도를 의미함 오늘날의 일반적 선택은 double! 예제 circle_area.c 참조 자료형 정밀도 float 소수 이하 6자리 double 소수 이하 15자리 long double double의 정밀도와 같거나 크다.

unsigned가 붙어서 달라지는 표현의 범위 5-1 C 언어가 제공하는 기본 자료형 unsigned가 붙어서 달라지는 표현의 범위 MSB까지도 데이터의 크기를 표현하는데 사용 양의 정수로 인식 실수형 자료형에는 붙일 수 없다. 자료형 메모리 크기 표현 가능한 데이터의 범위 char(signed char) 1바이트 -128 ~ +127 unsigned char 0 ~ (127 + 128) short(signed short) 2바이트 -32768 ~ +32767 unsigned short 0 ~ (32767 + 32768) int(signed int) 4바이트 -2147483648 ~ +2147483647 unsigned int 0 ~ (2147483647 + 2147483648) long(signed long) unsigned long

5-1 C 언어가 제공하는 기본 자료형 문자 표현을 위한 ASCII 코드의 등장 미국 표준 협회(ANSI)에 의해 정의 컴퓨터를 통해서 문자를 표현하기 위한 표준 컴퓨터는 문자를 표현하지 못함 문자와 숫자의 연결 관계를 정의 문자 A는 숫자 65, 문자 B는 숫자 66…

5-1 C 언어가 제공하는 기본 자료형 ASCII 코드의 범위 문자의 표현 0이상 127이하, char형 변수로 처리 가능 따옴표(' ')를 이용해서 표현 예제 how_char.c 참조 그림 5-1

5-2 상수에 대한 이해 리터럴(literal) 상수 이름을 지니지 않는 상수 그림 5-2 int main(void) { 5-2 상수에 대한 이해 리터럴(literal) 상수 이름을 지니지 않는 상수 int main(void) { int val = 30 + 40; . . . . . 그림 5-2

5-2 상수에 대한 이해 리터럴 상수의 기본 자료형 상수도 메모리 공간에 저장되기 위해서 자료형이 결정된다. 5-2 상수에 대한 이해 리터럴 상수의 기본 자료형 상수도 메모리 공간에 저장되기 위해서 자료형이 결정된다. int main(void) { char c = ‘A’; // 문자상수(char) int i = 5; // 정수상수(int) double d= 3.15; // 실수상수(double) . . . . .

5-2 상수에 대한 이해 리터럴 상수의 기본 자료형 int main(void) { float f = 3.14; // float f= 3.14f return 0; } warning C4305: 'initializing' : truncation from 'const double ' to 'float '

5-2 상수에 대한 이해 접미사에 따른 다양한 상수의 표현 접미사 자료형 사용 예 u or U unsigned int 304U 5-2 상수에 대한 이해 접미사에 따른 다양한 상수의 표현 접미사 자료형 사용 예 u or U unsigned int 304U l or L long 304L ul or UL unsigned long 304UL f or F float 3.15F long double 3.15L

5-2 상수에 대한 이해 심볼릭(symbolic) 상수 심볼릭 상수를 정의하는 방법 이름을 지니는 상수 5-2 상수에 대한 이해 심볼릭(symbolic) 상수 이름을 지니는 상수 심볼릭 상수를 정의하는 방법 const 키워드를 통한 변수의 상수화 매크로를 이용한 상수의 정의

5-2 상수에 대한 이해 const 키워드에 의한 상수화 잘못된 상수 선언 int main(void) { 5-2 상수에 대한 이해 const 키워드에 의한 상수화 int main(void) { const int MAX=100; const double PI=3.1415; . . . . . } 잘못된 상수 선언 int main(void) { const int MAX; MAX=100; . . . . . }

5-3 자료형 변환에 대한 이야기 자료형 변환의 두 가지 형태 자동 형 변환 강제 형 변환 5-3 자료형 변환에 대한 이야기 자료형 변환의 두 가지 형태 자동 형 변환 자동적으로 발생하는 형태의 변환을 의미한다. 묵시적 형 변환이라고도 표현한다. 강제 형 변환 프로그래머가 명시적으로 형 변환을 요청하는 형태의 변환 명시적 형 변환이라고도 표현한다.

5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 1 대입 연산 시 예제 auto_conv1.c 참조 5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 1 대입 연산 시 예제 auto_conv1.c 참조 int main(void) { int n=5.25; // 소수부의 손실 double d=3; // 값의 표현이 넓은 범위로의 변환 char c=129; // 상위 비트의 손실

5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 2 정수의 승격에 의해(int형 연산이 빠른 이유) 5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 2 정수의 승격에 의해(int형 연산이 빠른 이유) 정수형 연산 자체를 단일화시킨 결과 int main(void) { char c1=10, c2=20; char c3=c1+c2; . . . . .

5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 3 산술 연산 과정에 의해 int main(void) { 5-3 자료형 변환에 대한 이야기 자동 형 변환이 발생하는 상황 3 산술 연산 과정에 의해 int main(void) { double e1 = 5.5 + 7; // double + int double e2 = 3.14f+5.25; // float + double . . . . .

5-3 자료형 변환에 대한 이야기 산술 연산 형 변환 규칙 데이터의 손실이 최소화되는 방향으로... 그림 5-5

5-3 자료형 변환에 대한 이야기 강제 형 변환 프로그래머의 요청에 의한 형 변환 예제 conv_div.c 참조 5-3 자료형 변환에 대한 이야기 강제 형 변환 프로그래머의 요청에 의한 형 변환 예제 conv_div.c 참조 float f= (float)3.14; // 3.14를 float 형으로 형 변환 double e1 = 3 + 3.14; //정수 3이 double 형으로 자동 형 변환 double e2 = 3 + (int)3.14; // 3.14가 int형으로 강제 형 변환