这个问题对我来说真的很奇怪..我正在创建并写入一个简单的文件。 当我正在阅读这段代码时:
return_chars = new char[10];
file.read(return_chars, 10);
结果只包含4个字符!这是14个标志长。 只有在读取10个字符和某些其他数字(例如24个)时才会发生这种情况。 在8的长度,它不会发生。 它添加的符号总是相同的10个字符:CE = 0
这是我用来举例说明从文件中读取内容的代码:
MessageBoxA(NULL, return_chars, "title", 0);
问题出在哪里? o.o 非常感谢!
答案 0 :(得分:3)
只是猜测你提供的有限信息,也许showText方法没有正确处理return_chars数组,因为它不是一个空终止字符串?你可以试试,
return_chars = new char[11];
file.read(return_chars, 10);
return_chars[10] = '\0';
showText(return_chars);