c语言 设置当前路径
来源:互联网 发布:淘宝上下架在哪里设置 编辑:程序博客网 时间:2024/06/03 20:21
1.背景
由于要用分支定界解决一个运输最短路径问题,需要从txt中读入一个50x50的城市距离数据。
一开始采用了fopen("xx.txt","r")的方式,总是报错,说是找不到文件,打开失败。明明就在目录下为什么会找不到呢?
网上一查,才知道可能是我采用的是相对路径的方式打开的文件,而系统维护的这个相对路径,并不是我这个exe运行时的路径。
那么我把txt放在与exe同目录下就没什么意义了,肯定是打不开的!为什么不用绝对路径呢?因为这个程序交给别人的话,用绝对路径
多半就是读不进来。所以还是用相对路径,并想办法,把系统的当前路径改到我的exe所在路径,这样只有txt与exe同在一个文件夹,在谁的电脑上都能正常打开了。
2.程序
int main(){ const char exename[500]; char pathname[500]; DWORD dwfile; char *phead,*plast; dwfile = GetModuleFileNameA(NULL, exename, 500); if(dwfile == 0) printf("Can't get exe filepath! Be careful about the file path."); else printf("%s \n",exename);//下面开始将exe的名字和后缀去掉 plast = strrchr(exename, '\\'); phead = exename; strncpy(pathname,exename,strlen(phead)-strlen(plast)+1); pathname[strlen(phead)-strlen(plast)+1]='\0'; SetCurrentDirectoryA(pathname); printf("当前路径为: %s \n",pathname);}
好了,下面再用fopen("xx.txt","r");就没什么问题了!
- c语言 设置当前路径
- c语言获取当前路径
- 【C语言】【unix c】获得当前路径
- 用C语言获取当前路径
- c语言获取当前工作路径(转)
- c语言获取当前工作路径(转)
- C语言获取当前工作路径
- c语言获取当前工作路径(转)
- c语言获取当前工作路径(转)
- c语言获取当前工作路径(转)
- lua设置当前路径
- linux C语言获取当前可执行程序的路径及文件名 vs 获取当前工作路径
- c语言获取当前可执行文件的执行路径个文件名
- C语言中对路径的设置问题。
- C\C++ 获取当前路径
- C\C++ 获取当前路径
- C\C++ 获取当前路径
- C\C++获取当前路径
- JAVA中,文件操作类(File/FileOutputStream等)
- C#创建txt文件
- 二维码的生成细节和原理(一):基础
- TelephonyManager获取手机设备识别号
- SVM支持向量机总结(不包括高维核函数等)
- c语言 设置当前路径
- C++ - 可变参数函数模板(Variadic Function Template) 详解 及 代码
- Java多线程-线程的生命周期
- ExtJS的使用方法汇总(1)——配置和表格控件使用
- arguments for subroutine in Perl
- 数组的排序
- Oracle:递归查询详解
- 100个高质量Java开发者博客
- Objective-C的日期类NSDate