2013-02-08 23 views
-1

如何查找argv [],envp []和我的系統的輸入行的最大大小? 我正在使用sysconf()函數。 sysconf(_SC_ARGMAX)給我argv []的最大大小嗎?那另外兩個呢?如何在C++中使用sysconf()函數來查找以下信息?

+2

你讀過'man 3 sysconf'嗎? – 2013-02-08 23:26:30

+0

生病檢查出 – 2013-02-08 23:26:58

+0

「輸入行」你是指可以給一個程序的文本行嗎?我相信沒有限制,'while(getchar()!='\ n');''如果你持續按住鍵盤上的'a'鍵或者其他的鍵,將會永遠運行。經過一段時間後,C運行時庫的輸入緩衝區將被填滿,但它不會阻止線路變長 - 這意味着您無法返回並編輯緩衝區填充後程序已收到的字符並上交到該計劃。 – 2013-02-08 23:52:34

回答

-1

SYSCONF(3)

POSIX.1變量
ARG_MAX - _SC_ARG_MAX
的參數的最大長度給exec(3)系列函數。不得小於_POSIX_ARG_MAX(4096)。

POSIX.2變量
LINE_MAX - _SC_LINE_MAX
公用事業的輸入行長度的最大長度,無論是從 標準輸入或從文件中。這包括尾隨 換行符的長度。

BUGS
,因爲它沒有規定多少錢EXEC參數空間這是很難用ARG_MAX(3)由用戶的環境變量消耗。

相關問題