77问答网
所有问题
当前搜索:
*(p+1)
在c语言的指针运算中
*(p+1)
与p+1有什么区别 p是指针
答:
一、指代不同 1、
*(p+1)
:表示具体的数值。2、p+1:表示内存地址。二、指向的值不同 1、*(p+1):指针p所指向的内存地址单元的下一个内存地址单元中的值。2、p+1:指针p所指向的内存地址的下一个内存地址。三、内存表示不同 1、*(p+1):*的优先级比+的优先级高,所以*P+1在编译器中...
C++程序设计:当指针变量p指向字符串变量a时,
*(p+1)
是不是就是a中的第...
答:
(p+1)就是a[1],即a中的第二个字符。如:char a[]="123456";char *p=a;则
*(p+1)
就是字符2。
C语言题 执行下列语句后,
*(p+1)
的值是【1】. char s[3]="ab",*p; p...
答:
步骤:s是个char数组,所以s[0] = "a",s[1] = "b", s[2] = "\0";p是指针,它指向s的首地址.所以
*(p+1)
就相当于是去拿s[1]的值.所以是 "b"
二维数组中
*(p+1)
什么意思?
答:
p是指针, p+1, 不一定是p的内容+1, 要向p是什么, 如果p是char , 地址+1, 如果是int, 地址就+4 所以
*(p+1)
实际是等于p[1]
请问这道题中使用*(p++)和
*(p + 1)
的区别是什么?
答:
截图是在一条语句中多次使用++运算符,但是正常的方式是当所有的判断结束后,指针偏移一个地址,但是条件语句中,对指针p进行了多次地址偏移,所以会造成越界的问题。最简单的做法是在判断的开始直接将
*(p+1)
的内容进行缓存,如 char tmp =
*(p+1)
,这样不会多次重复使用*操作符。
有关二维数组指针的问题。对于
*(p+1)
,是指1行0列p[1][0]的地址,还是指...
答:
答:是指
1
行0列p[1][0]的地址 理由:语句中 数组和指针 有恒等式:声明 int p[5];语句中 p[i] ==
*(p+
i); 是数值 [] 不是标点符号,而是运算符。--- 声明 int p[5][4];语句中 p[i][j] = (p[i]) [j] = *( p[i]+j ) = *( *(p+i) + j...
*(p+1)
=*p?
答:
1、p 是一个指针。但数据类型不详。2、这是一个赋值语句。3、作用:让p指针下一个地址上存放的变量值,等于当前p指向的地址上存放的值。4、举例说明:不妨设p是一个int型指针,另外有一个int 型数组a[5],且a[0]~a[4]的值分别等于0~4,则:当p指向a[0]时,执行
*(p+1)
=*p,相当于...
*
*(p+1)
表达式对吗?
答:
如果p是指针的指针,这是正确的。
int *p+1 和
*(p+1)
指针问题
答:
这里p指向一个数组,*p的意思是首地址的值,如a[], p=a, 那么*p相当于a[0], *p+1就相当于a[0]+1, 而
*(p+1)
就相当于a[1]下面的i是数组名,所以printf("%d", i)的意思是输出i数组的首地址的值。如果要输出i[0]的值,可以printf("%d", i[0]), 或者printf("%d", *i)...
*(p + 1)
+ 1; 谁能告诉我 这句话怎么理解
答:
下面很多人都说了。如果是二维数组a[2][3] *p=a;的话。p一开始指向的是第0行的地址=&a[0]。
p+1
以后指向第一行=&a[1]。这时候外面加个*并没有指向任何内容,依然是个地址,因为在二维数组中并不存在a[0]这个元素。这时候再加1得到的就是&a[1][1],就是第一行第一列的地址 ...
1
2
3
4
5
6
7
8
9
10
下一页
尾页
其他人还搜
*p=a和*p=&a
*p++和*(p++)的区别
1 p o.c c
*5是什么意思
+1是什么意思
=0
*2是什么意思
+0/0.5
乛p是数学什么意思