想不到
发表在C语言图书答疑 2011-03-07
是否精华
版块置顶:
while ((*p2++=*p1++)!='\0');
为什么啊  想了很久了   
为什么*p2++=*p1++  这里是怎样的运算过程啊    
还有为什么 while ((*p2=*p1++)!='\0');跟 while ((*p2++=*p1++)='\0');输出的结果是一样的啊
原来的代码是
#include<iostream.h>
void main()
{
char str1[]="flaming autumn leaves!",str2[30],*p1,*p2;
p1=str1;p2=str2;
while ((*p2++=*p1++)!='\0');
p1=str1;p2=str2;
    cout<<"str1 is:"<<p1;
cout<<"\nstr2 is:"<<p2;
}
分享到:
精彩评论 1
学分: LV1
2011-03-09
沙发
*p2++=*p1++ 是将p1当前指向数据的下一个位置的值付给p2当前指向数据的下一个位置
while ((*p2=*p1++)!='\0');
“=”是赋值运算符
“==”才是比较运算符
不知道上面代码中是不是写错了,还是就是那样的。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照