Linux读取文件路径问题

本文讨论了在使用可执行程序时遇到的问题,即终端当前路径与程序所在路径不一致导致的文件无法打开。通过改变当前路径至程序所在目录,问题得以解决。文章提供了实际操作步骤及解决方案,帮助开发者避免此类困扰。

问题是这样的:

   首先终端上有当前路径显示,我有个可执行程序代码是这样的:

 

    FILE fp  = fopen(filename, "rb");

    if(fp == NULL)     printf("cannot open\n");

 

 

编译出来的可执行程序(elf格式)比如在/home/username下面。filename中的这个文件也是在username下。

我偶然这样运行:

终端当前路径是:/home

./username/my_elf

那么就会导致文件无法打开,其实是文件路径错误了。因为终端的当前路径不是username 下。

 

必须把终端的当前路径cd 到  username 下再./my_elf这样文件打开才正确。

转载于:https://www.cnblogs.com/foohack/p/4076687.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值