当我想找出流大小的实际数据类型时,cpp 参考说
用于表示流中的大小和字符计数的类型。
它是基本有符号整数类型之一的类型定义。
它可以转换为流关闭/从流转换。
这让我感到困惑,其他类型的解释,如流,流,fpos是相似的。
术语"整型"意味着它们是"某种整数类型",但不一定是int
。 signed
意味着它们可以采取积极和消极。为大小设置有符号值的原因是streamoff
和类型,可以在文件中向前(正)和向后(负)-因为当您要重新读取文件中的某些内容时,您需要相对于当前位置和负偏移量进行查找。
当然,尺寸本身不会是负数。
整数类型意味着它们可以是 int、无符号 int、long、无符号 long 等。这取决于您的机器和编译器。例如,在我的机器中:win7 64,vs2013 win32 调试。
cout << sizeof(streamsize) << endl;
cout << sizeof(streamoff) << endl;
为8,8.在其他环境中,可能会有所不同。