关于c语言中的关系运算符的理解
参考关系运算符中的“关系”二字指的是一个值与另一个值之间的关系,逻辑运算符中的“逻辑”二字指的是连接关系的方式。因为关系和逻辑运算符常在一起使用,所以将它们放在一起讨论。...
参考
关系运算符中的“关系”二字指的是一个值与另一个值之间的关系,逻辑运算符中的“逻辑”二字指的是连接关系的方式。因为关系和逻辑运算符常在一起使用,所以将它们放在一起讨论。关系和逻辑运算符概念中的关键是True(真)和Flase(假)。C语言中,非0为True,0为Flase。
来源http://www.examda.com/ncre2/C/fudao/20080707/085922653.html
我认为
其实没有真和假,只是仅有两种情况,令其中一种情况为真,那么和他相反的情况就为假,为了让人们理解(这两种情况的对立性和只有这2种的可能性),所以用真假来代替。
可以这样理解吗? 展开
关系运算符中的“关系”二字指的是一个值与另一个值之间的关系,逻辑运算符中的“逻辑”二字指的是连接关系的方式。因为关系和逻辑运算符常在一起使用,所以将它们放在一起讨论。关系和逻辑运算符概念中的关键是True(真)和Flase(假)。C语言中,非0为True,0为Flase。
来源http://www.examda.com/ncre2/C/fudao/20080707/085922653.html
我认为
其实没有真和假,只是仅有两种情况,令其中一种情况为真,那么和他相反的情况就为假,为了让人们理解(这两种情况的对立性和只有这2种的可能性),所以用真假来代替。
可以这样理解吗? 展开
3个回答
展开全部
条件表达式与逻辑表达式返回的结果只有1或0,没有其它可能,表达式成立时返回1,不成立时返回0,与自然语言中的真和假相对应,成立即为真,不成立即为假:
如 5 > 2在人们认知与认可的的数值比较中是成立的,即为真,而5 < 2则认为是不成立的,即为假。
c使用下面语句定义的true和flase:
#define true 1
#define flase 0
在条件表达式和逻辑表达式外,我们不能认为单个数值是否具有自然语言中意义的真假性:
如: int i =0;
在自然语言中我们不能认为说i为0就是假的,i为非0时是真的,在数值意义上,变量i的取值没有真假之分,但我们可以理所当然的认为 5 > 2 是成立是真的,
对于条件测试语句中
如 if(i)中,变量i有非0值时认为测试通过,为0时测试不通过,编译器做了一个隐式转换,不管i的知为多少,if后的括号中的i将作为一个条件表达式,会返回一个值,非0时返回1,为0时返回0
对于if(5 > 2)将很直观的知道5>2返回1
如 5 > 2在人们认知与认可的的数值比较中是成立的,即为真,而5 < 2则认为是不成立的,即为假。
c使用下面语句定义的true和flase:
#define true 1
#define flase 0
在条件表达式和逻辑表达式外,我们不能认为单个数值是否具有自然语言中意义的真假性:
如: int i =0;
在自然语言中我们不能认为说i为0就是假的,i为非0时是真的,在数值意义上,变量i的取值没有真假之分,但我们可以理所当然的认为 5 > 2 是成立是真的,
对于条件测试语句中
如 if(i)中,变量i有非0值时认为测试通过,为0时测试不通过,编译器做了一个隐式转换,不管i的知为多少,if后的括号中的i将作为一个条件表达式,会返回一个值,非0时返回1,为0时返回0
对于if(5 > 2)将很直观的知道5>2返回1
展开全部
LZ的哲学造诣让人佩服啊,,,,真假本来是对立的,对立的就是只有这两种情况,在C里用0代了假,那只有用非零代真了,当然也可以反过来,但是前者更符合人们的思维习惯。在一些面向对象的语言里,真就是TRUE,假就是FALSE,如java
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
本就是这个意思。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询