当gcc编译器使用了-std=c99
的时候,会报错:
warning: implicit declaration of function `getdtablesize'
当使用-std=c99
时,编译器会严格使用ISO C99
标准,getdtablesize
方法只在BSD
和X/Open
才会提供。所以如果指定了-std=c99
,要使用包含了该方法的标准,可在gcc
添加以下任意一行参数:
-std=c99 -D_GNU_SOURCE
-std=c99 -D_BSD_SOURCE
-std=c99 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED
-std=c99 -D_XOPEN_SOURCE=500
-std=c99 -D_XOPEN_SOURCE=600
-std=gnu99