我有以下代码:
if (myFile.is_open()) {
int i = 0;
while (myFile.good()) {
char *ptr = &(reinterpret_cast<char*>(&mem[0]))[i];
myFile.read(ptr, sizeof(struct req));
cout << ptr << endl;
i += sizeof(struct req);
}
}
这里循环中的 cout 似乎什么也没打印,尽管我知道代码肯定是在设置内存,因为如果我做类似的事情,它会打印出正确的值cout << mem[5]
。基本上,我只想打印ptr
所指内容的内容。这可能是一个愚蠢的问题,但有人知道这里有什么问题吗?