这是 c 语言中以指针为循环条件的 while 循环的一段代码样例:
while(*p)
{
// 循环内容忽略
}
其中指针 *p 指向的是已经定义了的一个数组.
网上说 while(*p) 循环,指针指向值为真的时候循环进行,指向值为假的时候循环结束.
请问大佬怎样理解指针指向值的真 or 假?
这是 c 语言中以指针为循环条件的 while 循环的一段代码样例:
while(*p)
{
// 循环内容忽略
}
其中指针 *p 指向的是已经定义了的一个数组.
网上说 while(*p) 循环,指针指向值为真的时候循环进行,指向值为假的时候循环结束.
请问大佬怎样理解指针指向值的真 or 假?
*p 实际上就是取数组第一个元素,它真则真,假则假
假设你上面的代码,如果指针p指向的是一个字符数组
那么这个代码可以相当于
while(*p!=NULL){
}
所以,你所说的怎么判断真假的情况就是:p为非空的时候,,条件为真,循环进行,一旦p为空,条件为假,循环体结束,跳出循环