자료형, 변수, 식
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

4.1 자료형 수정자

4.2 변수의 선언 위치

4.3 상수의 사용

4.4 변수의 초기화

4.5 식에서의 형 변환

4.6 치환에서의 형 변환

본문내용

을 계산할 동안 자동으로 int로 확장된다.
만약 하나의 피연산자가 long double이면 다른 연산자도 long double이 된다.
그렇지 않고, 피연산자가 double이면 다른 연산자도 double이 된다.
그렇지 않고, 피연산자가 float이면 다른 연산자도 float가 된다.
그렇지 않고, 피연산자가 unsigned long이면 다른 연산자도 unsigned long으로 변환된다.
그렇지 않고, 피연산자가 long이면 다른 연산자도 long으로 변환된다.
그렇지 않고, 피연산자가 unsigned이면 다른 연산자도 unsigned가 된다.
예. char ch;
int i;
float f;
double outcome;
ch = '0';
i = 10;
f = 10.2;
outcome = ch * i / f ;
+----+ |
int 형 |
+------+
float 형 /* 정수/실수 = 실수 */
4.6 치환에서의 형 변환
치환문의 왼쪽과 오른쪽의 형이 서로 다를 때, 오른쪽의 형이 왼쪽의 형으로 변환된다.
예. float f;
f=10; /* 실수에 정수를 대입 */
printf("%f\n", f);
예. outcome = ch * i / f ;
| +---+---+ 결과는 float 형이지만,
+-----------+ double 형으로 변환된 후 대입된다. (outcome이 double 형)
왼쪽 형의 크기가 오른쪽 형의 크기보다 클 때는 문제가 발생하지 않으나(왼쪽 형으로
자동 변환), 작을 때는 데이터가 손실된다.
char = int ; 상위 8비트가 없어진다. (16비트를 8비트에 대입)
int = long ; 상위 16비트가 없어진다. (32비트를 16비트에 대입)
int = float ; 소수 부분이 없어진다. (실수를 정수에 대입)
float = double ; 정밀도가 떨어진다. (8바이트 실수를 4바이트 실수에 대입)
예. int i;
i = 123.456; /* 정수에 실수를 대입 */
printf("%d\n", i);
4.7 형 변환자(type cast)
특정한 값의 형을 일시적으로 강제 변환시킨다.
형식: (type) value
+-------> C의 유효한 자료형 이름
예. #include "stdio.h"
main()
{
float f;
int a;
f = 100.2;
a = (int)f; /* f를 정수형으로 잠시 변환시켜서 대입 */
printf("%d, %f\n", a, f);
}
치환문의 왼쪽에 형 변환자를 사용할 수 없다.
예제. #include "stdio.h"
#include "math.h" /* sqrt() 함수를 위한 헤더 파일 */
main()
{
int i;
for (i=1; i<101; i++)
printf("%d, %lf\n", i, sqrt((double)i) );
/* sqrt() 함수의 인자는 double 형 */
/* 정수 i를 double 형으로 변환된 후 sqrt() 함수 호출 */
}
프로그래밍 연습
4.2절 연습문제 2
4.4절 연습문제 1
종합문제 1-7

키워드

변수,   수정자,   변환자,   자료형,   상수,   변환
  • 가격1,300
  • 페이지수7페이지
  • 등록일2003.02.10
  • 저작시기2003.02
  • 파일형식한글(hwp)
  • 자료번호#221065
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니