最近对以前写的代码进行消除编译警告,但是有一个isblank的警告一直无法消去。
例子源码如下:
编译的结果:
bash-2.05b# gcc -Wall test.c test.c: In function `main': test.c:9: warning: implicit declaration of function `isblank'
这个警告是说isblank没有对应的函数声明,需要包含相应的头文件。
通过man isblank,所显示的信息来看,对应的头文件就是ctype.h,但还是不行呀。
后来发现,在比较新的Linux发行版中编译时则没有这个警告,只有在比较旧的版本中才有。
再仔细看了一下man isblank,偶然间瞥到man信息中的一段信息:
isascii():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE