약간 문제가 있습니다. 기본적으로 코드는 다음과 같습니다.uint64_t의 용량은 얼마입니까?
uint64_t myInteger = 98930 * 98930;
NSLog(@"%qu", myInteger);
... 그냥 잘못되었습니다. 출력으로 '1197210308'이 표시됩니다. 이는 분명히 부정확합니다. 왜 이런 일이 일어나는 걸까요? uint64_t가 너무 작아서 분명히 18 and a half quintillion까지 올라갈 수는 없습니다. 누구든지 어떤 생각을 가지고 있습니까?
또는 : uint64_t myInteger = 98930UL * 98930UL; ' –
그게 전부입니다. 이제 작동합니다. 감사! –
또는 그 이상 : UINT64_C (98930) * UINT64_C (98930) – nall