sunluke1112 发表于 2014-9-12 16:25:14

新手求教关于C语言

char c='k';
        int i=2,j=2,b=2;
        printf("%d",i==j==b);

i,j,b不是相等的吗 ,为什么显示的是0


而这个

char c='k';
        int i=2,j=2,b=2;
        printf("%d",i==j,j==b);


显示的是   1

漩涡鸣人 发表于 2014-9-12 18:16:55

i==j==b这样判断不对的哦,i==j && j==b这种就OK
因为i==j判断完就成了布尔值了,C里面用1或0表示真或假
所以第二步变成了0==b或者1==b,当然会出现错误的结果

啃啃 发表于 2014-9-12 20:11:20

一楼正解

musilintan 发表于 2014-9-12 22:47:04

一楼正解。。。。

latter 发表于 2014-9-13 17:19:56

支持一楼一下!

xiao-tian5 发表于 2014-9-13 21:18:40

:lol:支持一楼!!!!!

babylonia000 发表于 2014-9-18 10:47:26

一楼说得对。

addeva@163.com 发表于 2014-9-19 15:15:30

本帖最后由 addeva@163.com 于 2014-9-19 15:18 编辑

还不错的说~
页: [1]
查看完整版本: 新手求教关于C语言