怎么理解C语言中 a=p==&m;的意思
#include"stdio.h"main(){inta,b,k=5,m=4;int*p1=&k,*p2=&m;a=p1==&m;b=(-*p1)/(*p2)+7;pri...
# include"stdio.h"
main()
{
int a,b,k=5,m=4;
int *p1=&k,*p2=&m;
a=p1==&m;
b=(-*p1)/(*p2)+7;
printf("a=%d\n",a);
printf("b=%d\n",b);
} 展开
main()
{
int a,b,k=5,m=4;
int *p1=&k,*p2=&m;
a=p1==&m;
b=(-*p1)/(*p2)+7;
printf("a=%d\n",a);
printf("b=%d\n",b);
} 展开
4个回答
展开全部
==优先运算。如果p的值等于m的地址,a=1,否则a=0
相当于表达式a=(p==&m?1:0);
相当于表达式a=(p==&m?1:0);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
它是个判断加赋值的语句。
若p1==&m值为真,a=1,反之a=0
若p1==&m值为真,a=1,反之a=0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这句话可以这样表达,更加清晰
if(p1 == &m)
{
a = 1;
}
else
{
a = 0;
}
if(p1 == &m)
{
a = 1;
}
else
{
a = 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |