溫馨提示×

c語言dirname函數(shù)怎么使用

小億
330
2023-08-07 23:34:43
欄目: 編程語言

C語言中的dirname函數(shù)用于獲取一個文件路徑的目錄部分。它的函數(shù)原型如下:

#include <libgen.h>
char *dirname(char *path);

其中,path為要提取目錄的文件路徑。dirname函數(shù)返回一個指向目錄部分的字符串指針。

使用dirname函數(shù)的示例代碼如下:

#include <stdio.h>
#include <libgen.h>
int main() {
char path[] = "/usr/local/include/stdio.h";
char *dir = dirname(path);
printf("Directory: %s\n", dir);
return 0;
}

輸出結(jié)果為:

Directory: /usr/local/include

注意事項(xiàng):

  • dirname函數(shù)會修改傳入的路徑字符串,使其指向目錄部分的字符串。

  • 如果傳入的路徑?jīng)]有目錄部分(例如只有文件名),dirname函數(shù)會返回一個點(diǎn)號(.)。

  • dirname函數(shù)是非線程安全的,因?yàn)樗褂昧遂o態(tài)緩沖區(qū)來存儲結(jié)果,所以在多線程環(huán)境中應(yīng)該使用dirname_r函數(shù)來替代。dirname_r函數(shù)的使用方法與dirname函數(shù)類似,但需要傳入一個額外的緩沖區(qū)。

0