linux -gcc env的相对路径解释

gol*_*ean 2 relative-path

我有一个问题涉及如何在各种环境中解释相对路径.如果我有一个C代码要使用Makefile和gcc在linux上编译,并且如果某个源文件有:

fopen(“../../xyz.ctl”, ”r”); 
Run Code Online (Sandbox Code Playgroud)

这个文件应该放在哪里.或者换句话说,如果我有

fopen(“xyz.ctl” , ”r”); 
Run Code Online (Sandbox Code Playgroud)

编译器会在同一个文件夹中查找xyz.ctl: -

a.)哪里有这个语句fopen的源文件?

b.)makefile在哪里?

c.)将生成linux可执行文件的位置?

我知道MSVC所有相对路径都来自具有*.dsw(工作区文件)的文件夹.对于RVDS环境,它从生成可执行文件*.axf的文件夹开始.

-广告

小智 5

您的Makefile调用gcc,它编译包含fopen()的代码.执行新编译的代码时会调用fopen().启动程序时,该路径相对于当前工作目录.