안녕하세요 실수의 1차원배열 질문드려요
조회수 661회
#include <stdio.h>
void main()
{
double i, sale[5] = {157, 209, 251, 312, 500};
for (i = 0; i < 5; i++) {
printf("\n address:%u sale[%d]=%d", &sale[i], i, sale[i]);
}
}
이거를
이런식으로 표현하고싶습니다.
실수 float와 double을 논리적 순서와 물리적 순서를 확인하고싶습니다.
저 코드에서 실수를 뽑으려면 무엇을 바꿔야하나요?
1 답변
-
#include <stdio.h> int main(){ int i; double sale[5] = {157, 209, 251, 312, 500}; for (i = 0; i < 5; i++) { printf("\n address:%u sale[%d]=%f", &sale[i], i, sale[i]); } return 0; }
printf 함수에 들어가는 포맷스트링 %d 는 정수형을 표현하는것입니다. 실수형을 표현하는 %f 로 바꿔주시면 잘 나옵니다.
-99, -47 등의 값을 보니 byte 타입으로 바뀌어서 overflow 가 나오는것 같은데요. 이 부분은 왜 byte 로 변한건지는 모르겠습니다.
댓글 입력