我剛剛發現的open()(男子2開放)系統調用有兩個版本:open()系統調用多態性
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
事實上,人們可以在一個單一的C文件請使用兩者會工作。標準C如何實現這一目標?
我剛剛發現的open()(男子2開放)系統調用有兩個版本:open()系統調用多態性
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
事實上,人們可以在一個單一的C文件請使用兩者會工作。標準C如何實現這一目標?
事實上,這不是C++ - 風格的函數重載。這只是open()
是可變參數:
int open(const char *fname, int flags, ...);
且僅當「標誌」需要它,它會尋找第三個參數。
在手冊頁中沒有看到標誌和模式之間的任何關係。謹慎闡述? – lang2 2013-03-01 06:05:44
@ lang2模式*僅在需要時使用*,例如,當'O_CREAT'被指定爲標誌時。例如,當您打開一個文件供閱讀時,談論文件模式是沒有意義的...... – 2013-03-01 06:07:03
@張元在C?一點也不。 – 2013-03-01 16:31:49