5个回答
展开全部
答: 括号里面是个逻辑表达式。
代码解释:
首先这是个赋值表达式。"q++"是把q指针变量所指向的内存空间地址自加一个“内存单元”(如果这个指针变量的类型是int类型,那么q自加“一个内存单元”就是增加两个字节),取当前所指内存中的数值(即是,*q++)存储给P当前所指向的内存地址空间,再自加一个"内存单元",最后再取该空间的值作为整个表达式的值的逻辑值。
实际就是:
找地址→取值→赋值给指定内存→再把值取出来作为表达式的逻辑值。
个人建议:实践是检验真理的唯一标准。像这样拿不准的代码,用一个实例来检验是最好不过的了。
代码解释:
首先这是个赋值表达式。"q++"是把q指针变量所指向的内存空间地址自加一个“内存单元”(如果这个指针变量的类型是int类型,那么q自加“一个内存单元”就是增加两个字节),取当前所指内存中的数值(即是,*q++)存储给P当前所指向的内存地址空间,再自加一个"内存单元",最后再取该空间的值作为整个表达式的值的逻辑值。
实际就是:
找地址→取值→赋值给指定内存→再把值取出来作为表达式的逻辑值。
个人建议:实践是检验真理的唯一标准。像这样拿不准的代码,用一个实例来检验是最好不过的了。
展开全部
可以这么理解 把指针*q++处的值付给*P++,*与++的优先级一样但是他们是右运算,所以要++先跟p指针结合,所以先做p++ 由于++在后面所以p没有变,所以可以理解为把*q处的值赋给*P,然后再做指针的自加,也就是先用后加
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while后括号中的是循环条件。而p和q是指向字符串的指针变量。作用就是将q所指的字符串复制到p所指的字符串上,直到最后将q的字符串结束标志'\0'赋给*P++然后停止循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*P=*q; P++; q++; while(*P)
这是运行顺序,但不等效,就是每次循环前都要进行一次
这是运行顺序,但不等效,就是每次循环前都要进行一次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
复制字符串啊,先*p=*q,然后p++,q++,最后判断while里面的东东是否为0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询