C 언어 데이터 형식 변환 인 스 턴 스 코드
데이터 형식 변환 의 일반 형식 은:
(type_name) expression
type_name 은 변환 할 데이터 형식 이 고 expression 은 표현 식 입 니 다.예 를 들 면:
(float) a; // a
(int)(x+y); // x+y
(float) 100; //
[예시]정 수 를 부동 소수점 으로 변환 합 니 다.
#include <stdio.h>
int main(){
int sum = 17, count = 5;
double mean;
mean = (double) sum / count;
printf("Value of mean : %f
", mean);
return 0;
}
실행 결과:Value of mean : 3.400000
주의해 야 할 것 은 형식 변환 연산 자()의 우선 순위 가/보다 높 고(double)sum/count 는 먼저 sum 을 double 형식 으로 바 꾼 다음 에 나 누 기 연산 을 합 니 다.쓰기(double)(sum/count)를 사용 하면 실행 결 과 는 3.000000 입 니 다.
프로그래머 의 명시 적 전환 을 강제 유형 전환 이 라 고 한다.강제 형식 변환 을 제외 하고 서로 다른 데이터 형식의 혼합 연산 에서 컴 파일 러 도 데이터 형식 변환 을 암시 적 으로 진행 하여 자동 형식 변환 이 라 고 한다.
자동 형식 변환 은 다음 규칙 을 따 릅 니 다:
1.연산 에 참여 하 는 데이터 형식 이 다 르 면 먼저 같은 유형 으로 전환 한 다음 에 연산 을 한다.
2.데이터 길이 가 증가 하 는 방향 으로 전환 하여 정밀도 가 떨 어 지지 않도록 한다.예 를 들 어 int 형 과 log 형 연산 을 할 때 int 양 을 log 형 으로 바 꾼 다음 에 연산 을 한다.
3.모든 부동 소수점 연산 은 이중 정밀도 로 진행 되 며,float 단일 정밀도 연산 표현 식 만 포함 하 더 라 도 먼저 double 형 으로 변환 한 다음 에 연산 해 야 합 니 다.
4.char 형 과 short 형 이 연산 에 참여 할 때 반드시 int 형 으로 전환 해 야 한다.
5.할당 연산 에서 할당 번호 양쪽 의 데이터 형식 이 다 르 면 오른쪽 표현 식 의 형식 을 왼쪽 변수의 형식 으로 변환 해 야 합 니 다.오른쪽 표현 식 의 데이터 형식 길이 가 왼쪽 보다 길 면 일부 데 이 터 를 잃 어 버 려 정밀도 가 떨 어 집 니 다.
다음 그림 은 형식 자동 변환 규칙 을 표시 합 니 다.
[예시]자동 데이터 형식 변환.
#include<stdio.h>
int main(){
float PI=3.14159;
int s1, r=5;
double s2;
s1 = r*r*PI;
s2 = r*r*PI;
printf("s1=%d, s2=%f
", s1, s2);
return 0;
}
실행 결과:s1=78, s2=78.539753
표현 식 r*r*PI 를 계산 할 때 r 와 PI 는 모두 double 형식 으로 바 뀌 었 고 표현 식 의 결과 도 double 형식 으로 바 뀌 었 습 니 다.그러나 s1 은 정형 이기 때문에 할당 연산 의 결 과 는 여전히 정형 으로 소수 부분 을 버 렸 다.
주의 하 는 것 은 소수 부분 을 직접 버 리 는 것 이지 반올림 에 따라 앞으로 반올림 하 는 것 이 아니다.
강제 변환 이 든 자동 변환 이 든 이번 연산 의 수 요 를 위해 변수의 데이터 길 이 를 임시 적 으로 변환 할 뿐 데이터 설명 을 바 꾸 지 않 을 때 이 변수 에 대한 정의 유형 을 바 꾸 지 않 습 니 다.
아래 의 예 를 보십시오.
#include<stdio.h>
int main(){
float f=5.75;
printf("(int)f=%d, f=%f
",(int)f, f);
return 0;
}
실행 결과:(int)f=5, f=5.750000
이상 C 언어 데이터 형식의 변환 인 스 턴 스 상세 설명,학습 에 도움 이 되 기 를 바 랍 니 다. C 언어 기초 지식의 동창.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C 언어 구현 천둥 제거 게임 상세 정보먼저 작은 메뉴를 표시하고 게임을 할지 여부를 선택하십시오.사용자가 종료를 선택하면 프로그램 실행이 끝나고, 사용자가 게임을 선택하면 지뢰 제거 위치 좌표를 입력하라는 메시지가 표시됩니다.사용자가 입력한 좌표가 바둑...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.