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