搞笑了,一个狠古老的算法库,为绝对支持XP和VFP,当时毅然选择用VC6.0编译……
后来的故事,相信咱们都知道啦:VC6.0编译的DLL,似乎无法在Windows 10下正常运行。一调用,即出错!
微软对待Visual Studio 6.0的亲儿子VC 6.0,似乎比对待继子VFP 6.0,更狠,更无情!
好歹VFP 6.0过了十几年后,还有可能正常运行一下子。
那些都是题外话。
话说,VC 6.0的标准库ctype中,没有isblank(),而我的算法库,最新修订时,却用到了这个函数。
怎么办?我搜了半天,才搞清楚,isblank()是在C99标准中新增的。
于是又傻乎乎找C99标准库的源代码,看能否将它添加到自己的算法库当中。
下载了glibc-2.36.tar.xz,解压缩一看,TNND,高人行事,神秘莫测!
isblank()竟然是个宏,而且一宏套一宏,一宏套一宏,左兜右转,那源代码异常晦涩,几乎完全看不懂!
正一筹莫展之际,突然看到一个帖子,不觉哑然,笑成了死猪叫:
//---------------
int isblank(int c)
{
if((c == ' ') || (c == '\t')) return 1;
else return 0;
}
//---------------
看来,一根筋的老家伙,容易将简单问题想复杂化了。