我正在使用以下代码:
fileIn.seekg(12,std::ios::beg);
uint16_t data;
fileIn>>data;
LOG_D("app","file data=%u",data);
但实际发生的是它记录了我在 seekg 中传递的偏移值,就像在给定的情况下它记录了
file data=12
如果我用
fileIn.seekg(8,std::ios::beg); 然后它打印“文件数据=8”
一般会打印
file data=x for fileIn.seekg(x,std::ios::beg);
对我来说很神秘!我正在将 android ndk r10d c++ 与 eclipse 一起用于 ARM thumb 目标
最佳答案
您是否检查过是否确实从流中读取了任何内容?我猜你只是在打印垃圾数据。
关于Android NDK seekg 坏了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28085336/