侧边栏壁纸
  • 累计撰写 73 篇文章
  • 累计创建 14 个标签
  • 累计收到 1 条评论

C语言文件路径的一点心得

秋山人家
2019-06-26 / 0 评论 / 0 点赞 / 1,815 阅读 / 0 字
温馨提示:
本文最后更新于 2019-07-23,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

C语言程序在涉及路径的代码中,主要会涉及到windows和linux这两大平台的差异。

在windows平台下,其路径的主要形式为:
H:\MyDrivers\backup

在linux平台下,其路径主要形式为: /home/MyDrivers/backup

在windows平台中,其也接收linux风格的路径。但是在linux中传入windows风格路径会出现问题。我的解决办法就是通用使用linux风格的路径,这样有利于跨平台移植。

void linux_style_path(char * path)  
{  
   	int path_len = 0;  
    	int i = 0;
	char chr;  
    	path_len = strlen(path);  
	for(i = 0;i<path_len ;i++)  
	{  
		chr = path[i];  
	  	if(chr == "\")  
		{  
			path[i] = '/';  
		}  
	}    
} 

其中有点需要特别说明的是: 在windows平台中传入路径,需要加转义符号
char path[] = "H:\MyDrivers\backup";
FILE* fp = fopen(path,"w");
这样肯定会出错,因为实际传入的路径是:H:MyDriversbackup
所以,在windows平台中需要传入:
char path[] = "H:\MyDrivers\backup";
FILE* fp = fopen(path,"w");
如果转成linux风格路径就完全没得问题哈!

0

评论区