解释下面while循环条件的行为

来源:百度知道 编辑:UC知道 时间:2024/06/21 02:24:32
char *cp="hello world";
while (cp&&*cp)
解释上面while循环条件的行为

这个循环的条件的行为就是判断两个:一个是CP这个指针是否不为空,并且*cp不为字符串中的结束符,这个两个都满足进入循环体,&&这个是与的意思,就是要同时满足两个条件

char *cp="hello world";
这句话的意思就是说
char *cp;
cp="hello world";
cp是"hello world"字符串的首地址,而*cp是第一个字符‘h’
其余的楼上都说的很明白了

cp为真且*cp为真的时候进行循环
cp为真 cp指针指向地址不为空
*cp为真 指针变量不为空,就是得赋值了

定义 一个指针cp 指向helloworld
当指针变量CP非空和它所指向的变量非空的时候,开始循环

当cp指向地址非空(字符串"hello world"所需空间分配成功)并且,字符串非空(即*p不为'\0'字符)时执行循环体。循环体内一定有改变*p的值或者p指向的语句。