使用数组求两个相对路径的绝对路径:
dir[] = “c./test/abc/haha/123/tom.doc”;
dir2[] = “c./test/abc/123/hehe/”;
dir3[]="…/…/haha/123/tom.doc"
char dir[] = "c./test/abc/haha/123/tom.doc";
char cur[] = "c./test/abc/123/hehe";
char dir2[100] = { "" };
int i = 0, j = 0, k = 0, d = 0;
while (dir[i] == cur[i])
{
i++;
}
d = i;
while (dir[i])
{
if (dir[i++] == '/')
j++;
}
for (k = 0; k < j * 3; k++)
{
if ((k + 1) % 3 == 0)
{
dir2[k] = '/';
}
else dir2[k] = '.';
}
while (dir[d])
{
dir2[k++] = dir[d++];
}
puts(dir2);
return 0;
相对路径:以一个目录为起点到你所想找到文件的所在的目录,用 **…/**表示上级目录
绝对路径:可以准确无误的判断一个文件的位置,描述了完整路劲的文件位置
“./”:代表目前所在的目录。
“…/”:代表上一层目录。
以"/"开头:代表根目录。
方法:找到相同数目位置,找出 dir[] = "c./test/abc/haha/123/tom.doc"和dir2[] = “c./test/abc/123/hehe/”;相同的位置,也就是c./test/abc/haha/,然后找出后面的 "/"用以**“…/”形式输出,用下标表示,然后将haha/123/tom.doc连接在“…/”**的后面。就能得到 “…/…/haha/123/tom.doc”。