c++ - 从文件中读取 uint32_t 值

标签 c++ file-io input io

我想使用下面的代码从文件中读取 uint32_t 整数。 ifstream 只接受指向 char 数组的指针。有没有另一种方法可以使用类似于下面的代码读取 uint32_t 值?

int readCount;
uint32_t buffer[SIZE];
while ( fin.read( &buffer[0], SIZE)
        || (readCount = fin.gcount()) != 0 ) {
    // some code
}

最佳答案

使用强制转换,例如:

if (fin.read(reinterpret_cast<char *>(buffer), sizeof buffer) &&
    fin.gcount() == sizeof buffer)
{
    // use buf
}

(明确允许将任何对象解释为字符数组,正是为了 I/O 的目的。)

关于c++ - 从文件中读取 uint32_t 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23418818/

相关文章:

c++ - 滚动时的滚动条事件?

c++ - 我的轨迹栏有什么问题?

file-io - 使用 '\n' 将多行写入文本文件

angular - 如何在Angular 5中实现货币类型输入?

java - 如何忽略非整数输入并继续接受输入

c++ - 智能感知 : no operator "<<" matches these operands

c++ - STL 或 BOOST 是否提供任何干净的方法来获取排序顺序而无需重新排序原始序列?

c - 使用链表从文件中获取数据

java - 如何读取模板文件的内容进行更改并另存为新文件?

ios - 阿拉伯字符(有效的电源错误)使我的 swift iOS 应用程序崩溃。如何正确清理输入以避免此问题和相关问题?