slfd.net
当前位置:首页>>关于C语言中,*p++=*q++什么意思的资料>>

C语言中,*p++=*q++什么意思

双目运算符“++”的运算级别是高于“*”的,所以先执行++。 那两楼都说的不够详细,还要看指针变量p和q的类型,比如说是int类型(占四个字节) 假设q存储的地址是100,那执行q++后所指向的地址就是104(并不是101,要注意这一点)(p++类似,不再说...

p++的运算符优先级大于*p,但是p++是先取p的值,所以 你可以理解为*p++的值是*p,但是执行完之后,p=p+1 所以*p++ = *q的意思是 *p= *q; p=p+1;

C编译器认为*和++是同优先级操作符,且都是从右至左结合的。由于()的优先级比*和++都高,所以(*q)++中的++就作用在(*q)上(即q指向的目标上)了;q++中的++作用在指针q上而与q指向的目标无关。比如有: int x,a[]={1,2,3,4,5},*q=a; x=(*q)++;//执...

这是个赋值表达式。"q++"是把q指针变量所指向的内存空间地址自加一个“内存单元”(如果这个指针变量的类型是int类型,那么q自加“一个内存单元”就是增加两个字节),取当前所指内存中的数值(即是,*q++)存储给P当前所指向的内存地址空间,再自加一...

p是个指针(一级指针),把a的值赋给p所指向的地址,q是个二级指针(也就是指针的指针),q中保存这p的地址

不用加分号的,while里面的是一个循环判断语句,也就是一个布尔表达式,不需要加分号,另外你说的内几个表达式都是不等价的,比如int a = 3; ++a和a++是不一样的,在一个语句中,++a是先自加,再参与计算,a++是先将a参与计算,语句结束后再将a...

若p和q是申明为类型兼容的指针变量,且都正确赋有合法值且不为NULL,那么,*p=*q是把指针q指向的目标值赋给指针p指向的目标;p=q则是使指针p指向指针q指向的目标(最终是p和q指向了同一目标,这个目标就是q指向的目标)。在q==NULL时,*p=*q非法操...

*表示这是一个指针,q和P都是指针变量,里面存放的数据一般情况下是一个地址。 如果你定义了一个变量如: char a; 那么系统会分配给这个a一个房间来存储char型的变量,这个变量(房间)很显然是有地址的(门牌号),不然你就找不到这个房间了。 如...

*p:p指向的内容,*q:q指向的内容。“||”或运算符。 while(*q||*p)的意思就是:当q或者p所指内容中有一个不为空(依照你的意思,就是字符'\0'),则执行while循环。

int ************q不知道是什么,如果你说的是int *q的话就是定义一个指针q,指针用来指向地址。

网站首页 | 网站地图
All rights reserved Powered by www.slfd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com