unix 的路径 是用 正斜杠 /, linux 继承 unix 用 正斜杠,
网页 html 等 也是用 正斜杠.
反斜杠,计算机 软件 用于 “转义”.
可是垄断了微机 *** 作系统的微软,路径 用的是 反斜杠 \. 所以在视窗系统的C程序中写文件路径时,不得不用 “双反斜杠”,第一个反斜杠叫 “转义”(就是下一个字符作特殊解释),“双反斜杠”解释为路径。
理论上 "xxx/xx"与"xxx\\xx" 没有什么区别,但不是所有编译器都懂。总之,微软系统你用 “双反斜杠”保险。
windows下文件路径是用\分隔的,比如C:\Windows\System32\就是一个标准的windows路径。在C语言中,文件路径会被写作字符串形式,但是由于C语言的字符串规则中,\字符是转义字符的引导,所以直接写
"C:\Windows\System32\"
会出错。而字符'\\'才是表示\。
于是在写路径的时候,就必须是
"C:\\Windows\\System32\\"
即,写成单独的\的,是windows的标准形式,而写成\\的,才是C语言中用到的形式。
C语言里在main函数的第二个参数里面,
保存着当前程序运行的目录
也就是argv[0]
main( int argc, char *argv[])
{
printf("%s ", argv[0] )
}
就是文件当前所在位置
不过需要注意的一点是
这个路径里面保存了当前文件的文件名
如果你只是需要路径的话还需要自己 *** 作一下
main(int a,char *c[])
{
char s[100]
int i
//把路径保存到字符串s里
strcpy(s,c[0])
for(i=strlen(s)i>0 i--)
if( s[i] == '\\')
{
s[i]='\0'
break
}
//找到最后一个 \ 并删除之后的内容
//最后输出的s,就是当前文件的路径了
puts(s)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)