我需要加载最多2 ^ 32的内容。
许多资源表明cin
或scanf
根本不会加载这么大的数字。
加载如此大数字的最佳方式是什么?
答案 0 :(得分:1)
std::cin
和scanf
都应该有效:
#include <cinttypes>
#include <cstdio>
#include <iostream>
int main()
{
uint32_t n;
//with iostreams
std::cin >> n;
std::cout<<"read: "<<n<<'\n';
//with stdio
scanf("%" SCNu32, &n);
printf("read: %" PRIu32 "\n", n);
}
要么加载一个直到但不包括2 ^ 32(且不小于0)的整数。如果需要更大的范围,请尝试64位整数(有符号或无符号)。