为了账号安全,请及时绑定邮箱和手机立即绑定

不明这个代码while(*p)的意义

不明这个代码while(*p)的意义

C
金大大Da 2016-01-11 10:25:42
#include <stdio.h>main(){char str[50],*p=str;printf("enter string:");gets(str);while(*p)p++;printf("string lenth=%d\n",p-str);}
查看完整描述

3 回答

已采纳
?
流浪_老

TA贡献71条经验 获得超14个赞

意思等同while(*p!=NULL)就是指针不为空的时候

查看完整回答
反对 回复 2016-01-11
?
hhh112123123

TA贡献158条经验 获得超98个赞

*是取地址符号,p是地址*p就是你的内容。 while里面判断值返回0或1 当内容不为空时就是1可以进行循环.

查看完整回答
反对 回复 2016-01-12
?
Jabin_Aronvoy

TA贡献2条经验 获得超0个赞

在这里*p尽管是一个指向字符的指针,但把它放在while的条件判定中时它会隐式转换为bool类型。当p为空时为false,当p不为空则为true。

查看完整回答
反对 回复 2016-01-11
  • 3 回答
  • 0 关注
  • 1949 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信