Linux環境下程式執行路徑的問題

2021-09-19 23:57:17 字數 1124 閱讀 6652

例如

#執行程式

yourhost:~/documents/codes/ccodes$ ./getc_test

#那麼當前目錄即為

~/documents/codes/ccodes

如果在程式中指定檔案目錄為"filename",則檔案應該在~/documents/codes/ccodes

如果在程式中指定檔案目錄為"…/filename",則檔案應該在~/documents/codes

程式結構

|---------bin:可執行檔案

|---------sources:

|-----------------------getc_test.c

|---------makefile

|---------hellotest.text

makefile檔案

cc = gcc

cflags = -w -wall -o2

inc =

targets = bin/getc_test

src_dir = sources

all:$(targets)

$(targets):

@echo "start compiling..."

$(cc) $(cflags) $(src_dir)/getc_test.c -o bin/getc_test

clean:

rm -rf bin/*

.c檔案

#include

#include

#include

intmain()

*/ file* fd;if(

(fd =

fopen

("hellotest.txt"

,"rw"))

==null

)printf

("-------------------------\n");

char ch =

fgetc

(fd)

;while

(ch !=

eof)

fclose

(fd)

;}

c 獲取程式執行路徑

獲取exe路徑 注意,不要使用system.environment.currentdirectory 或system.io.directory.getcurrentdirectory 因為他們代表獲得當前路徑,可以被改變的,例如openfiledialog每換一次目錄就會改變它。獲取當前路徑的父路徑...

readlink函式 獲取程式的執行路徑

readlink 取得符號連線所指的檔案 相關函式 stat,lstat,symlink 表頭檔案 include 定義函式 int readlink const char path char buf,size t bufsiz 函式說明 readlink 會將引數path的符號連線內容存到引數bu...

C 獲取當前程式執行路徑

獲取當前程序的完整路徑,包含檔名 程序名 string str this.gettype assembly.location result x exe exe檔案所在的目錄 exe檔名 獲取新的 process元件並將其與當前活動的程序關聯的主模組的完整路徑,包含檔名 程序名 string str ...