将int的地址强制转换为char指针的正确方法

时间:2011-12-20 13:46:16

标签: c++ pointers casting

如果我需要从ifstream读取int

int myInt = 0;
fileStream.read(reinterpret_cast<char*>(&myInt), sizeof(int));

正在使用reinterpret_cast<char*>正确的方法来实现这一目标吗?

1 个答案:

答案 0 :(得分:15)

  

正在使用reinterpret_cast正确的方法来实现这个目标吗?

是。首选c ++样式转换,而不是c样式转换。

正如评论中所建议的,使用read method function的更好方法是:

int myInt = 0;
fileStream.read(reinterpret_cast<char*>(&myInt), sizeof(myInt));