C语言文件路径问题(一)
2015-06-29 18:43
281 查看
今天写程序时发现C语言操作文件路径有一些问题:
这段代码目的是为了在C盘的根目录建立一个可写的text.txt文件。但是可能是我粗心打错了,我把
程序也是可以运行的 。
最后,经过多方查证,发现原来是如下问题:
而且,如果你在计算机的本地搜索栏中打入C:/text.txt 和打入C:\text.txt都可以哦
#include <stdio.h> int main() { FILE *fp; fp=fopen("c:\\text.txt","w"); if(fp) { fclose(fp); } else printf("新建文件夹失败\n"); system("pause"); return 0; }
这段代码目的是为了在C盘的根目录建立一个可写的text.txt文件。但是可能是我粗心打错了,我把
fp=fopen("c:\\text.txt","w");写成了<pre name="code" class="cpp">fp=fopen("c:/text.txt","w");
程序也是可以运行的 。
最后,经过多方查证,发现原来是如下问题:
C 语言 最早 用于 unix.unix 的路径 是用 正斜杠 /, linux 继承 unix 用 正斜杠,网页 html 等 也是用 正斜杠.
反斜杠,计算机 软件 用于 “转义”. 可是垄断了微机操作系统的微软,路径 用的是 反斜杠 \. 所以在视窗系统的C程序中写文件路径时,不得不用 “双反斜杠”,第一个反斜杠叫 “转义”(就是下一个字符作特殊解释),“双反斜杠”解释为路径。 理论上 "xxx/xx"与"xxx\\xx" 没有什么区别,但不是所有编译器都懂。总之,微软系统你用 “双反斜杠”保险。
而且,如果你在计算机的本地搜索栏中打入C:/text.txt 和打入C:\text.txt都可以哦
相关文章推荐
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言内存对齐实例详解
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- 探讨C语言的那些小秘密之断言
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数
- 基于C语言fflush()函数的使用详解
- C语言单链队列的表示与实现实例详解
- 关于C语言除0引发的思考
- 深入分析C中不安全的sprintf与strcpy
- Lua教程(四):在Lua中调用C语言、C++的函数
- C语言求幂计算的高效解法
- C语言实现输入一颗二元查找树并将该树转换为它的镜像
- 12个关于C语言的有趣问答
- 探讨register关键字在c语言和c++中的差异