洗尘斋

三悬明镜垂鸿韵,九撩清泉洗尘心

常用链接

统计

最新评论

scanf的烦恼

    今天连着2次用错scanf函数,这大概也是历史上第N+1次错误了,一直使用cin来输入数据,近来使用scanf的时候老出错误,因为它要去参数为一个地址,而编译器对于整数和地址的处理是类似的,往往不能指出错误。而当它运行时是不发生错误的,但会得到不正确的结果。。一步步的检查,并不能发现错误,只好打log,替换掉相应的块,然后逐步恢复原来的编码,最后才发现是sscanf的使用错误。这种错误实际上是有征兆的,因为程序每次运行时后使用的都是一个随机数据,而不是你所输入的数据。但编译的时候并不能发现错误。和往常的错误一样,编写一个程序可能只要半小时几分钟,而查找一个错误却花了我好几个小时的时间。这是一个不小的教训,也提示我在编译的时候-Wall选项的必要性。为了使我以后不会忘记使用这个选项,alias一下它吧,打开.profile文件,加入一行
alias gcc='gcc -Wall'
alias g
++='g++ -Wall'
这样以后每次使用gcc/g++的时候它就自动启用-Wall选项了

posted on 2007-10-10 18:23 芥之舟 阅读(675) 评论(0)  编辑 收藏 引用 所属分类: C/C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理