我不知道标题是否正确解决了我的问题。所以,我就随它去吧。这是问题所在,我必须输入一个包含大量反斜杠的文件路径的字符数组(在 Windows 中),例如。"C:\myfile.txt" 并返回 C 样式文件路径的无符号字符数组,例如。“C:\myfile.txt”。
我试图写一个函数。
unsigned char* parse_file_path(char *path);
{
unsigned char p[60];
int i,j;
int len = strlen(path);
for(i=0,j=0; i<len; i++, j++)
{
char ch = path[i];
if(ch==27)
{
p[j++]='\\';
p[j]='\\';
}
else
p[j] = path[i];
}
p[j]='\0';
return p;
}
我遇到的奇怪的事情(对我来说)是,这里的路径只包含一个反斜杠“\”。为了得到一个反斜杠,我必须把'\'放在路径中。这是不可能的,因为路径不能包含“\”。当我这样称呼它时parse_file_path("t\es\t \it)
,它会返回
t←s it
。但parse_file_path("t\\es\\t \\it")
回报t\es\t \it
。
我怎样才能完成我的任务?提前致谢。