C에서 "unsigned long"을 어떻게 인쇄하나요?
-
13-09-2020 - |
문제
인쇄하는 방법을 전혀 이해할 수 없습니다 unsigned long
C의 데이터 유형
가정하다 unsigned_foo
이다 unsigned long
, 그런 다음 다음을 시도합니다.
printf("%lu\n", unsigned_foo)
printf("%du\n", unsigned_foo)
printf("%ud\n", unsigned_foo)
printf("%ll\n", unsigned_foo)
printf("%ld\n", unsigned_foo)
printf("%dl\n", unsigned_foo)
그리고 그들 모두는 일종의 인쇄를 합니다. -123123123
대신에 숫자 unsigned long
내가 가진 것.
해결책
%lu
은(는) 올바른 형식입니다. unsigned long
.여기에는 메모리 손상이나 초기화되지 않은 변수와 같은 다른 문제가 있는 것 같습니다.더 큰 그림을 보여주실 수 있을까요?
다른 팁
%lu
~을 위한 부호 없는 긴%llu
~을 위한 부호 없는 긴 긴
을 위한 정수 %d
을 위한 긴 정수 %ld
을 위한 긴 긴 정수 %lld
을 위한 부호 없는 긴 긴 정수 %llu
당신이 시도한 모든 조합 중에서, %ld
그리고 %lu
유효한 printf 형식 지정자인 유일한 것입니다. %lu
(부호 없는 긴 십진수), %lx
또는 %lX
(소문자 또는 대문자로 구성된 긴 16진수) 및 %lo
(long octal)은 unsigned long 유형의 변수에 대해 유일하게 유효한 형식 지정자입니다. 물론 필드 너비, 정밀도 등 수정자를 추가할 수 있습니다. %
그리고 l
).
int main()
{
unsigned long long d;
scanf("%llu",&d);
printf("%llu",d);
getch();
}
이것은 도움이 될 것입니다...
형식은 %lu
.
다양한 다른 데이터 유형과 printf에서의 사용법을 확인하세요. 여기
unsigned long에 대한 올바른 지정자는 다음과 같습니다. %lu
.
기대하는 정확한 값을 얻지 못하면 코드에 몇 가지 문제가 있을 수 있습니다.
여기에 코드를 복사해 주세요.그러면 누군가가 문제가 무엇인지 더 잘 말해 줄 수 있을 것입니다.
나는 같은 문제가 있었다."%ul"을 사용해 보세요. 저에게 적합합니다.