除了每种类型可以容纳的值的大小之外,和之间的主要使用区别是什么?类型用于绝对大小而类型用于偏移量只是一种约定吗?还是比这更深?size_t
off_t
size_t
off_t
我正在编写一个包装类来启用大型文件的写入,mmap
并且我想知道最好的类型用于它们的参数。鉴于我想写入 > 4GB 的文件,我很想对所有内容都使用 size_t,但这是最佳做法吗?(或者我应该off64_t
为某些功能使用某些类型?)
例如,我的writeAt
函数是否应该声明为:
MMapWriter::writeAt(off64_t offset, const void* src, size_t size)
或者
MMapWriter::writeAt(size_t offset, const void* src, size_t size)