pathconf

pathconf

>un istd.h

頭文件


函數原型


long pathconf( const char* path,int name );

說明


pathconf函數返回配置文件的限制值,是與文件或目錄相關聯的運行時限制。path參數是你想得到限制值的路徑,name是想得到限制值的名稱,name的取值主要有以下幾個取值:
限制名說明name參數
FILESIZEBITS在指定目錄中允許的普通文件最大長度所需的最少位數_PC_FILESIZEBITS
LINK_MAX文件鏈接數的最大值_PC_LINK_MAX
MAX_CANON終端規範輸入隊列的最大位元組數_PC_MAX_CANON
MAX_INPUT終端輸入隊列可用空間的位元組數_PC_MAX_INPUT
NAME_MAX文件名的最大位元組數_PC_NAME_MAX
PATH_MAX相對路徑名的最大位元組數,包括null_PC_PATH_MAX
PIPE_BUF能原子的寫到管道的最大位元組數_PC_PIPE_BUF
SYMLINK_MAX符號鏈接中的位元組數_PC_SYMLINK_MAX
該函數在錯誤的時候返回-1,並且設置相應的errno值。
EACCES
所給的文件路徑許可權不允許
EINVAL
name參數無效.
ELOOP
Too many levels of symbolic links or prefixes.
ENAMETOOLONG
path參數太長了.
ENOENT
所給的文件不存在.
ENOSYS
The pathconf() function isn't implemented for the filesystem specified in path.
ENOTDIR
path參數不是一個目錄.

範例


#include
#include
#include
int main( void )
{
long value;
value = pathconf( "/dev/con1", _PC_MAX_INPUT );
printf( "Input buffer size is %ld bytes\n",
value );
return EXIT_SUCCESS;
}