C : printf a float 값
쉼표 뒤에 정수 2 자리와 10 진수 6 자리가있는 부동 소수점 값을 인쇄하고 싶습니다. 그냥 사용 printf("%f", myFloat)
하면 잘린 값을 얻습니다.
이것이 항상 C에서 발생하는지 또는 마이크로 컨트롤러에 C를 사용하고 있기 때문인지 (정확히 CCS) 참조에서는 %f
잘린 부동 소수점 을 얻습니다.
내 float가 44.556677
이면 "44.55"
처음 두 개의 십진수 만 인쇄합니다 .
그래서 질문은 ... 어떻게 내 6 자리를 인쇄 할 수 있습니까 (그리고 그 뒤에 0이있는 경우를 대비하여 6 자리 만)?
다음과 같이 할 수 있습니다.
printf("%.6f", myFloat);
6은 점 뒤의 자릿수를 나타냅니다.
추신 @caf 나를 수정 해 주셔서 감사 합니다.
printf("%9.6f", myFloat)
총 9 개의 문자로 형식을 지정합니다. 점 앞 2 자리, 점 자체, 점 뒤 6 자리입니다.
printf("%.<number>f", myFloat) //where <number> - digit after comma
http://www.cplusplus.com/reference/clibrary/cstdio/printf/
printf("%0k.yf" float_variable_name)
다음 k
은 인쇄하려는 총 문자 수입니다. k = x + 1 + y
( + 1
점의 경우) float_variable_name
인쇄 할 부동 변수입니다.
소수점 앞 x 자리와 그 뒤에 y 자리를 인쇄한다고 가정합니다. 이제 float_variable_name 앞의 자릿수가 x보다 작 으면 그 앞에 자동으로 많은 0이 추가됩니다.
사용 %.6f
. 이것은 6 개의 소수를 인쇄합니다.
printf 문 %2.6f
대신 사용해야 합니다 %f
.
참고 URL : https://stackoverflow.com/questions/8345581/c-printf-a-float-value
'developer tip' 카테고리의 다른 글
Windows 서비스를 단위 테스트하려면 어떻게해야합니까? (0) | 2020.12.07 |
---|---|
ASP.NET MVC : 컨트롤러 메서드에서 다운로드 할 일반 텍스트 파일 반환 (0) | 2020.12.07 |
한 SQL Server에서 다른 SQL Server로 테이블 데이터 내보내기 (0) | 2020.12.07 |
Spring Profile 변수 설정 (0) | 2020.12.07 |
ElasticSearch에서 모든 _id를 검색하는 효율적인 방법 (0) | 2020.12.07 |