1. 读取文件并显示,会在最后输出“铪铪”这种文字。示例代码如下:
CFile m_file;
m_file.Open( "example.txt",CFile::modeRead);
DWORD MAX_LENGTH = m_file.GetLength();
unsigned char * pData = (unsigned char*)malloc(sizeof(char) * MAX_LENGTH);
//打印代码...
错误原因:GetLength方法不会获取文件最后的'\0',所以显示的时候不会找到这个字符,读取最后的字符时根据内容可能会产生如上乱码。
修正方法:
unsigned char * pData = (unsigned char*)malloc(sizeof(char) * MAX_LENGTH +1);
pData[MAX_LENGTH] = ‘\0’