当一个函数有返回值时,如果调用该函数,并且没有把返回值赋值给一个变量的话,那么用pclint工具区检测代码的时候,就会产生error 746,我该如何去修改了,让它不产生error,或者说我应该在std.lnt文件中加上 -e746(直接去忽略该错误了)。
谁有这方面的经验 告诉我一下啊~
11 个解决方案
#1
错了, 这个是 534error.。。。 不是746.。。。。
#2
直接忽略算了
我们都是忽略的
我们都是忽略的
#3
恩 OK, 我是第一次用这个 玩意儿,很多都不懂。 谢谢了啊~~~
#4
这位大神你能告诉我下,一般有pclint检测程序的时候都需要忽略哪些error number了?
#5
错了,我们常用的选项里没有534
-e402 //tatic function 'Symbol' (Location) not defined太多了
-e414 //Possible division by 0
-e419 //Apparent data overrun for function 'Symbol', argument Integer exceeds argument Integer
-e433 //Allocated area not large enough for pointer
-e508 //extern used with definition
-e512 //Symbol 'Symbol' previously used as static (Location)
-e514 //Unusual use of a Boolean
-e516 //Symbol 'Symbol' has arg. type conflict
-e524 //Loss of precision (Context) (Type to Type)
-e525 //Negative indentation from Location
-e526 //Symbol 'Symbol' (Location) not defined
-e537
-e539
-e545
-e553
-e567
-e573
-e574
-e618
-e628
-e641
-e665
-e671
...
#6
啊。。。。 能把你常用哪些个error number 发给我吗? 我的邮箱是 xzjxylophone@126.com
#7
你的lint目录下有没有个options.lnt文件?
这些都是从那里面摘的
这些都是从那里面摘的
#8
有这个文件, 但是是空的....
pclint 是我自己从网站上下载的按照教程去安装 去用的,但是就是不知道到底一般都是需要忽略哪些error
#9
[code=HTM]-e701
-e702
-e704
-e713
-e714
-e716
-e725
-e731
-e737
-e746
-e747
-e750
-e751
-e752
-e754
-e755
-e756
-e757
-e758
-e759
-e760
-e762
-e763
-e765
-e766
-e768
-e769
-e774
-e783
-e785
-e796
-e801
-e818
-e820
-e826
-e830
-e831
-e834
-e1526
-e1529
-e1536
-e1538
-e1704
-e1705
-e1711
-e1712
-e1716
-e1717
-e1720
-e1724
-e1732
-e1733
-e1736
-e1744
-e1746
-e1762
-e1763
-e1764
-e1771
-e1773
-e1774
-e1776
-e502
-e506
-e522
-e570
-e601
-e631
-e648
-e685
-e722
-e730
-e740
-e767
-e770
-e786
-e794
-e817
-e825
-e833
-e1202
-e1514
-e1703
-e1740
-e1775
-e505
-e522
-e559
-e560
-e605
-e712
-e736
-e740
-e745
-e764
-e825
-e1514
-e1524
-e1703
-e1729
-e1738
-e1740
//下面的是必须注意的警告,但是太多了,先屏蔽掉
-e534 //Ignoring return value of function 'Symbol' (compare with Location)
-e715 //Symbol 'Symbol' (Location) not referenced
-e732 //Loss of sign (Context) (Type to Type)
-e734 //Loss of precision (Context)
-e528 //Symbol 'Symbol' (Location) not referenced
-e744 //switch statement has no default
//注释掉动态创建的所有警告
-efunc(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(19,_STD_END) //
-esym(123,clearerr,feof,ferror,getwchar) //
-esym(39,std::iterator_traits<unsigned short>) //
+libdir(c:\unix.include) //屏蔽目录下面的文件检查
//★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
//*『说明』****************可以抑制非本C文件的其它文件的告警,
//这个告警抑制应当在上面的选项可以工作之后才可以加上。
-elib(*)
[/code]
-e702
-e704
-e713
-e714
-e716
-e725
-e731
-e737
-e746
-e747
-e750
-e751
-e752
-e754
-e755
-e756
-e757
-e758
-e759
-e760
-e762
-e763
-e765
-e766
-e768
-e769
-e774
-e783
-e785
-e796
-e801
-e818
-e820
-e826
-e830
-e831
-e834
-e1526
-e1529
-e1536
-e1538
-e1704
-e1705
-e1711
-e1712
-e1716
-e1717
-e1720
-e1724
-e1732
-e1733
-e1736
-e1744
-e1746
-e1762
-e1763
-e1764
-e1771
-e1773
-e1774
-e1776
-e502
-e506
-e522
-e570
-e601
-e631
-e648
-e685
-e722
-e730
-e740
-e767
-e770
-e786
-e794
-e817
-e825
-e833
-e1202
-e1514
-e1703
-e1740
-e1775
-e505
-e522
-e559
-e560
-e605
-e712
-e736
-e740
-e745
-e764
-e825
-e1514
-e1524
-e1703
-e1729
-e1738
-e1740
//下面的是必须注意的警告,但是太多了,先屏蔽掉
-e534 //Ignoring return value of function 'Symbol' (compare with Location)
-e715 //Symbol 'Symbol' (Location) not referenced
-e732 //Loss of sign (Context) (Type to Type)
-e734 //Loss of precision (Context)
-e528 //Symbol 'Symbol' (Location) not referenced
-e744 //switch statement has no default
//注释掉动态创建的所有警告
-efunc(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(19,_STD_END) //
-esym(123,clearerr,feof,ferror,getwchar) //
-esym(39,std::iterator_traits<unsigned short>) //
+libdir(c:\unix.include) //屏蔽目录下面的文件检查
//★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
//*『说明』****************可以抑制非本C文件的其它文件的告警,
//这个告警抑制应当在上面的选项可以工作之后才可以加上。
-elib(*)
[/code]
#10
#11
不是有帮助文档吗?那里面有很细节的描述
#1
错了, 这个是 534error.。。。 不是746.。。。。
#2
直接忽略算了
我们都是忽略的
我们都是忽略的
#3
恩 OK, 我是第一次用这个 玩意儿,很多都不懂。 谢谢了啊~~~
#4
这位大神你能告诉我下,一般有pclint检测程序的时候都需要忽略哪些error number了?
#5
错了,我们常用的选项里没有534
-e402 //tatic function 'Symbol' (Location) not defined太多了
-e414 //Possible division by 0
-e419 //Apparent data overrun for function 'Symbol', argument Integer exceeds argument Integer
-e433 //Allocated area not large enough for pointer
-e508 //extern used with definition
-e512 //Symbol 'Symbol' previously used as static (Location)
-e514 //Unusual use of a Boolean
-e516 //Symbol 'Symbol' has arg. type conflict
-e524 //Loss of precision (Context) (Type to Type)
-e525 //Negative indentation from Location
-e526 //Symbol 'Symbol' (Location) not defined
-e537
-e539
-e545
-e553
-e567
-e573
-e574
-e618
-e628
-e641
-e665
-e671
...
#6
啊。。。。 能把你常用哪些个error number 发给我吗? 我的邮箱是 xzjxylophone@126.com
#7
你的lint目录下有没有个options.lnt文件?
这些都是从那里面摘的
这些都是从那里面摘的
#8
有这个文件, 但是是空的....
pclint 是我自己从网站上下载的按照教程去安装 去用的,但是就是不知道到底一般都是需要忽略哪些error
#9
[code=HTM]-e701
-e702
-e704
-e713
-e714
-e716
-e725
-e731
-e737
-e746
-e747
-e750
-e751
-e752
-e754
-e755
-e756
-e757
-e758
-e759
-e760
-e762
-e763
-e765
-e766
-e768
-e769
-e774
-e783
-e785
-e796
-e801
-e818
-e820
-e826
-e830
-e831
-e834
-e1526
-e1529
-e1536
-e1538
-e1704
-e1705
-e1711
-e1712
-e1716
-e1717
-e1720
-e1724
-e1732
-e1733
-e1736
-e1744
-e1746
-e1762
-e1763
-e1764
-e1771
-e1773
-e1774
-e1776
-e502
-e506
-e522
-e570
-e601
-e631
-e648
-e685
-e722
-e730
-e740
-e767
-e770
-e786
-e794
-e817
-e825
-e833
-e1202
-e1514
-e1703
-e1740
-e1775
-e505
-e522
-e559
-e560
-e605
-e712
-e736
-e740
-e745
-e764
-e825
-e1514
-e1524
-e1703
-e1729
-e1738
-e1740
//下面的是必须注意的警告,但是太多了,先屏蔽掉
-e534 //Ignoring return value of function 'Symbol' (compare with Location)
-e715 //Symbol 'Symbol' (Location) not referenced
-e732 //Loss of sign (Context) (Type to Type)
-e734 //Loss of precision (Context)
-e528 //Symbol 'Symbol' (Location) not referenced
-e744 //switch statement has no default
//注释掉动态创建的所有警告
-efunc(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(19,_STD_END) //
-esym(123,clearerr,feof,ferror,getwchar) //
-esym(39,std::iterator_traits<unsigned short>) //
+libdir(c:\unix.include) //屏蔽目录下面的文件检查
//★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
//*『说明』****************可以抑制非本C文件的其它文件的告警,
//这个告警抑制应当在上面的选项可以工作之后才可以加上。
-elib(*)
[/code]
-e702
-e704
-e713
-e714
-e716
-e725
-e731
-e737
-e746
-e747
-e750
-e751
-e752
-e754
-e755
-e756
-e757
-e758
-e759
-e760
-e762
-e763
-e765
-e766
-e768
-e769
-e774
-e783
-e785
-e796
-e801
-e818
-e820
-e826
-e830
-e831
-e834
-e1526
-e1529
-e1536
-e1538
-e1704
-e1705
-e1711
-e1712
-e1716
-e1717
-e1720
-e1724
-e1732
-e1733
-e1736
-e1744
-e1746
-e1762
-e1763
-e1764
-e1771
-e1773
-e1774
-e1776
-e502
-e506
-e522
-e570
-e601
-e631
-e648
-e685
-e722
-e730
-e740
-e767
-e770
-e786
-e794
-e817
-e825
-e833
-e1202
-e1514
-e1703
-e1740
-e1775
-e505
-e522
-e559
-e560
-e605
-e712
-e736
-e740
-e745
-e764
-e825
-e1514
-e1524
-e1703
-e1729
-e1738
-e1740
//下面的是必须注意的警告,但是太多了,先屏蔽掉
-e534 //Ignoring return value of function 'Symbol' (compare with Location)
-e715 //Symbol 'Symbol' (Location) not referenced
-e732 //Loss of sign (Context) (Type to Type)
-e734 //Loss of precision (Context)
-e528 //Symbol 'Symbol' (Location) not referenced
-e744 //switch statement has no default
//注释掉动态创建的所有警告
-efunc(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(*,IMPLEMENT_OBJ_DYNCREATE)
-emacro(19,_STD_END) //
-esym(123,clearerr,feof,ferror,getwchar) //
-esym(39,std::iterator_traits<unsigned short>) //
+libdir(c:\unix.include) //屏蔽目录下面的文件检查
//★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
//*『说明』****************可以抑制非本C文件的其它文件的告警,
//这个告警抑制应当在上面的选项可以工作之后才可以加上。
-elib(*)
[/code]
#10
#11
不是有帮助文档吗?那里面有很细节的描述