如果是char型就移动一个字节呗
追答是的
c语言中移动指针*p++。它移动了多少啊.一个字节吗?
比如:int *p;p是指向int类型的指针变量,那么p++就移动了sizeof(int)个字节,也就是4字节
c语言 *(p++)和*p++含义一样不
肯定不一样的:(p++):是将先p所指向内存地址值A移动一个存储单元(如果p是int型就移动4个字节,char型就移动1个字节,……)得到另一个地址值B,再取移动后的地址值B所存放的数据;p++:是先取出p指向内存地址值A存放的数据,再把这个数据加一。
C语言题,求过程。顺便问下p++是什么意思?
p++就是说指针下移一位,比如刚开始的是*p=x表示p指针指向x数组的第一位元素,当执行p++之后就会指向x数组的第二位元素,以此类推。而题中最后输出结果是5,因为最后一个元素没有对它进行*p+=x[i]操作 有不懂的请追问
c语言指针* p++什么意思?
在c语言中 ++的优先级大于* i=*p++ 相当于 i=*(p++),又相当于 i=*p; p++; 但并不像bkldhldbk所说"*p++就是:p自身加1后取该指针所指的值" 。
c语言中,*p++是什么意思
p是一个指向某个数组的指针,那么*p++ 是表示两个意思:一、取数组当前位置的值*p 二、然后,p指向下一位置的数据。p=p+1
C语言中,对指针p
p++;这个表达式等价于: p = p+1; (或者p+=1;)楼主的困惑发生在对指针、指针的类型及指针的运算的理解不足上。1. 指针的本质是一个值,代表一个内存地址。所以,指针的基本功能就是指出(point to)一个地址。2.指针的类型,是指:指针所指出的那个地址里存放的那个数据的类型。也就是 (*p)...
C语言求助指针的移动问题
理解错误。这几个运算符中,=叫赋值运算符,它的优先级最低,而++的优先级最高,*次之。其实运算结果也不是“先赋值”,是先进行*操作从p指向的地址中取出值来才赋给S的,最后才对p增1。之所以优先级最高的++在最后进行,是由它自身的功能决定的:它写在变量后面,叫后增1运算符。后增1运算...
c语言中,指针的运算是怎么算的,如pa++
pa++就是pa = pa+1 但是这个1的字节数是根据pa指针的类型来取值的 比如int* pa;那这个1就是sizeof(int)double*pa;那这个1就是sizeof(double)数组的话,很简单,就是指向下一个元素的地址!
指针p p++和++p、p--和--p分别有什么区别???
1、p++ ++p相当于把p指针移动到p指针当前值加上sizeof(t)的位置,比如p=100,sizeof(t)=4,p++或者++p之后p等于104。2、p-- --p相当于把p指针移动到p指针当前值减去sizeof(t)的位置,比如p=100,sizeof(t)=4,p--或者--p之后p等于96。3、其中++或者--在后面,先以p当前位置来计算...
c语言指针*p中p++什么意思
p :二级指针,表示p所指向的地址里面存放的是一个指向类型的指针。p:一级指针,表示p所指向的地址里面存放的是一个类型的值。