曲径通幽论坛

标题: 不要以为赋值语句肯定为真 [打印本页]

作者: 张无忌    时间: 2012-6-30 11:26
标题: 不要以为赋值语句肯定为真
很多时候在写 if 判断时,误将 '==' 写成 '=' ,即逻辑等判断符号写成了赋值符号,最后都去执行了判断为真的语句,于是有许多人就会以为,赋值语句肯定是为真的,但这是错的,如果是用 0 来赋值,那么 if 判断仍然为假,比如下面程序所示:
[C++] 纯文本查看 复制代码
#include <stdio.h>


int main()
{
        int a;


        if (a = 1)
          printf ("hello\n");


        if (a = 0)
          printf ("world\n");


        return 0;
}

输出结果是 hello ,而不会输出 world 。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2