while循环的条件问题

书上看来的while循环内是条件判断,例如while(i < 100)

今天在看字符串拷贝函数的时候,发现有这样的实现:while(*dest++ = *src++);

在while里面只有一个赋值的操作,并没有像while((*dest++ = *src++) != '\0');这样判断.

但是最后使用第一种实现也完全实现了字符串拷贝的功能,这种实现我记得在一个比较老的版本中也看到过.

那么,while循环里面究竟是否需要做=0的判断呢?

在while括号里面的表达式的结果(true or false)是判断赋值操作是否成功,还是直接使用最后的变量的值?

求解释..

 

posted @ 2012-07-16 17:35  扑通`  阅读(822)  评论(1编辑  收藏  举报