好吧,今天;我遇到了一个奇怪的小情况,例如char* cFileCopy = strDrive;
_
这应该只在这一点上cFileCopy
保持 的值strDrive
,它确实如此,但是当我使用strcat(cFileCopy, cFileName);
的值strDrive
也更改为cFileCopy
after的值strcat()
_
我不确定发生了什么,但如果有人能对这种情况有所了解,这里是代码。
DWORD dwDrives = GetLogicalDrives();
char strDrive[3];
for(int i = 0; i<26; i++)
{
wsprintf(strDrive, "%c:\\", 'A'+i);
if(GetDriveType(strDrive) == DRIVE_REMOVABLE)
{
char* cFileName = new char[11];
cFileName = "test.txt";
char* cFileCopy = strDrive;
strcat(cFileCopy, cFileName);
MessageBox(NULL, strDrive, "Strange", MB_OK); //MSG - This shows drive:\test.txt when it should show only drive:\/
MessageBox(NULL, cFileCopy, "OK", MB_OK); //MSG - This should be showing drive:\test.txt, which it does.
}
}
任何帮助表示赞赏,谢谢。