我正在寫一個小型的C程序,我在其中調用isnumber()
函數。爲什麼isnumber()函數在Unix的某些發行版中存在,但在其他版本中不存在?
#include <ctype.h>
char c
if(isnumber(c))
{ foo }
這個編譯在我的Mac(OS X 10.8)上沒有問題。但是,當我將它上傳到CentOS 6.x服務器時,它將無法編譯。此外,the OS X man
page for isdigit()
描述了isnumber()
,但CentOS man
頁面沒有。就好像它在Linux上不存在一樣。 the OS X man
page for isdigit()
和a general Unix man
page對於isdigit()
都具有作爲C標準庫libc, -lc
的一部分列出的isnumber()
。當我將-lc
添加到Linux上的編譯標誌時,它仍然不會編譯。
爲什麼這個函數包含在Unix的某些形式中,而不是其他的?