프로그래밍 언어/C++
C++ 에서 bool에 대한 printf 포맷 지정자
Rateye
2021. 9. 28. 11:16
728x90
반응형
질문 : bool에 대한 printf 형식 지정자는 무엇입니까?
ANSI C99부터 stdbool.h
를 통해 _Bool
또는 bool
있습니다. 그러나 printf
형식 지정자가 있습니까?
나는 그 의사 코드와 같은 것을 의미합니다.
bool x = true;
printf("%B\n", x);
다음과 같이 인쇄됩니다.
true
답변
bool
유형에 대한 형식 지정자는 없습니다. 보다 짧은 모든 정수 계열 형식 때문에, int
로 승격됩니다 int
에 아래로 통과 할 때 printf()
의 가변 인수를 사용할 수 %d
:
bool x = true;
printf("%d\n", x); // prints 1
그러나 왜 안 되는가 :
printf(x ? "true" : "false");
또는 더 나은 :
printf("%s", x ? "true" : "false");
또는 더 나은 :
fputs(x ? "true" : "false", stdout);
대신?
출처 : https://stackoverflow.com/questions/17307275/what-is-the-printf-format-specifier-for-bool
728x90
반응형