반응형
16진수 형식의 부호 없는 긴 활자 인쇄
인쇄를 시도하고 있습니다.unsigned long long
다음과 같습니다.
printf("Hex add is: 0x%ux ", hexAdd);
단, Type 변환 에러가 발생하고 있습니다.unsigned long long
.
같은 것을 사용할 수 있습니다.ll
크기 한정자%x
다음과 같습니다.
#include <stdio.h>
int main() {
unsigned long long x = 123456789012345ULL;
printf("%llx\n", x);
return 0;
}
변환 및 포맷 지정자의 모든 범위를 다음 표에 나타냅니다.
해라%llu
- 10진수 형식으로 길게 서명되지 않습니다.
%llx
16진수로 길게 서명되지 않은 인쇄물
printf("Hex add is: %llu", hexAdd);
MinGW 라이브러리를 사용한 경우에도 비슷한 문제가 있었습니다.%llu 또는 %llx를 인식하지 못했습니다.
제 대답은 이렇습니다...
void PutValue64(uint64_t value) {
char a_string[25]; // 16 for the hex data, 2 for the 0x, 1 for the term, and some spare
uint32 MSB_part;
uint32 LSB_part;
MSB_part = value >> 32;
LSB_part= value & 0x00000000FFFFFFFF;
printf(a_string, "0x%04x%08x", MSB_part, LSB_part);
}
주의: %04x는 단순히 %x일 수 있지만 %08x가 필요합니다.
행운을 빌어요.마크.
언급URL : https://stackoverflow.com/questions/19284978/unsigned-long-long-type-printing-in-hexadecimal-format
반응형
'programing' 카테고리의 다른 글
v-model이 작동하지 않는 이유는 무엇입니까? (0) | 2022.08.03 |
---|---|
vue js에서 소품으로 수업을 통과합니까? (0) | 2022.08.03 |
rdtscp, rdtsc: 메모리와 cpuid/rdtsc의 차이점 (0) | 2022.08.03 |
동일한 키 아래에 여러 값이 있는 HashMap (0) | 2022.08.03 |
다른 컴포넌트에서 데이터 접근 (0) | 2022.08.03 |