我想在C程序中显示文件路径。我使用了_splitpath()
函数,有五个参数。在这些参数中,我使用Drive
连接Dir
和Filename
并再次连接Ext
和strcat()
。在这种情况下,strcat(Filename, Ext);
的输出是正确的,但strcat(Drive, Dir);
有错误。错误消息显示变量Drive
已损坏。如何连接Drive
和Dir
?
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
char szDrive[_MAX_DRIVE] = {0};
char szDir[_MAX_DIR] = {0};
char szFileName[_MAX_FNAME] = {0};
char szExt[_MAX_EXT] = {0};
char* pszFname = NULL;
char* pszPname = NULL;
_splitpath(argv[0], szDrive, szDir, szFileName, szExt);
pszPname = strcat(szDrive, szDir);
pszFname = strcat(szFileName, szExt);
printf("Usage: %s fileName\n", pszFname);
printf("EXE Path:%s", pszPname);
}