根据Splint FAQ:
对于Win32,由于存在以下问题,Splint查找splint.rc而不是.splintrc。
DOS文件名限制。它将首先在当前目录中显示,
然后在您的主目录中。
我已经设置了一个非常简单的测试,以尝试使夹板工作:
步骤1:将splint-3.1.1.win32.zip
提取到c:\splint
步骤2:在c:\test\test.c
中放一个简单的程序:
void main(void){
}
第3步:运行“ cmd”
步骤4:输入命令:cd c:\test\
然后,我尝试使用夹板,没有splint.rc,并且没有标志
步骤5:输入命令`c:\ splint \ bin \ splint.exe test.c'
如预期的那样,这将产生输出The function main does not output the expected type
然后,我尝试使用不带splint.rc和-maintype标志的夹板
步骤5:输入命令`c:\ splint \ bin \ splint.exe test.c -maintype'
如预期的那样,输出不再产生The function main does not output the expected type
。
然后,我尝试将splint与splint.rc一起使用,其中-maintype标志
步骤5:在c:\test\splint.rc
中,将内容放入-maintype
。
步骤5:输入命令`c:\ splint \ bin \ splint.exe test.c'
因为我在-maintype
中输入了splint.rc
,并且因为我正在其中包含splint.rc
的目录中运行splint命令,所以splint不应提出有关主要功能的警告,但是可以。我猜夹板没有拿起splint.rc配置文件。
我究竟做错了什么?
谢谢
最佳答案
同时,我通过使用-f标志来包含它来使其工作:
c:\splint\bin\splint.exe test.c -f splint.rc