반응형
음, PRIu64는 누구입니까?
저는 C를 처음 접했고 다음과 같은 문제에 직면했습니다.
#include <stdio.h>
#include <inttypes.h>
int main(void)
{
uint64_t foo = 10;
printf("foo is equal to %" PRIu64 "!\n", foo);
return 0;
}
그리고 작동합니다! 왜 그런지 모르겠어요? 누군가 이것에 대해 나를 도울 수 있습니까? 감사합니다! torr
PRIu64
인쇄를 위해 C99에 도입 된 형식 지정자입니다. uint64_t
여기서 uint64_t
is (링크 된 참조 페이지에서) :
너비가 각각 ... 64 비트 인 부호없는 정수 유형 (구현이 유형을 직접 지원하는 경우에만 제공됨)
PRIu64
문자열 (리터럴)입니다. 예를 들면 다음과 같습니다.
printf("%s\n", PRIu64);
llu
내 컴퓨터에 인쇄 됩니다. 인접한 문자열 리터럴은 C99 표준의 섹션 6.4.5 문자열 리터럴 에서 연결됩니다 .
변환 단계 6에서 인접한 문자 및 와이드 문자열 리터럴 토큰의 시퀀스에 의해 지정된 멀티 바이트 문자 시퀀스는 단일 멀티 바이트 문자 시퀀스로 연결됩니다 . 토큰 중 하나가 와이드 문자열 리터럴 토큰 인 경우 결과 멀티 바이트 문자 시퀀스는 와이드 문자열 리터럴로 처리됩니다. 그렇지 않으면 문자열 리터럴로 처리됩니다.
이것은 다음을 의미합니다.
printf("foo is equal to %" PRIu64 "!\n", foo);
(내 컴퓨터에서) 다음과 같습니다.
printf("foo is equal to %llu!\n", foo);
http://ideone.com/jFvKR9를 참조하십시오 .
참조 URL : https://stackoverflow.com/questions/16859500/mmh-who-are-you-priu64
반응형
'programing' 카테고리의 다른 글
Hunk # 1 FAILED at 1 그게 무슨 뜻입니까? (0) | 2021.01.15 |
---|---|
NodeJS :“EventEmitter 메모리 누수가 감지되었습니다. (0) | 2021.01.15 |
몽구스 '정적'방법 대 '인스턴스'방법 (0) | 2021.01.15 |
초기 값과 설정되지 않은 값의 차이점은 무엇입니까? (0) | 2021.01.15 |
IntelliJ의 멋진 ≠ (같지 않음) 연산자 활성화 (0) | 2021.01.15 |