c語言獲取運(yùn)行目錄 c語言中如何得到當(dāng)前文件所在位置?
c語言中如何得到當(dāng)前文件所在位置?在C語言main函數(shù)的第二個(gè)參數(shù)中,保存當(dāng)前程序運(yùn)行的目錄,即argv[0]main(intargc,char*argv[]}{printf(%s,argv[0])}
c語言中如何得到當(dāng)前文件所在位置?
在C語言main函數(shù)的第二個(gè)參數(shù)中,保存當(dāng)前程序運(yùn)行的目錄,即argv[0]main(intargc,char*argv[]}{printf(%s,argv[0])}是文件的當(dāng)前位置。但是,應(yīng)該注意,當(dāng)前文件的文件名保存在此路徑中。如果只需要一個(gè)路徑,則需要操作main(inta,char*C[]){chars[100]inti//將路徑保存到字符串s.strcpy(s,C[0])for(I=strlen(s)I>0i--)If(s[I]=“”){s[I]=“”0”break}//找到最后一個(gè)并將其刪除//最后一個(gè)輸出s是當(dāng)前文件的路徑。Puts(s)}
非常簡單:
API函數(shù):
getmodulefilename(module handle,saved character array,size of character array)
一般來說,要獲得運(yùn)行程序的完整路徑,在第一個(gè)參數(shù)中寫一個(gè)0
參數(shù)2是保存的數(shù)組,并且得到的路徑將保存在這個(gè)數(shù)組中
參數(shù)3是字符數(shù)組的大小
]給你一個(gè)示例程序:
#include&Ltwindows。H>
#包括<stdio。H>
void main()
{
char exeplace[1024]/*要保存地址的數(shù)組/
getmodulefilename(0,exeplace,1024)/*獲取當(dāng)前運(yùn)行的完整路徑*/
puts(exeplace)/*輸出獲取的路徑*/]}