77问答网
所有问题
当前搜索:
指针p
C语言中*p和**p有何区别
答:
p
表示p也表示地址,简单的说,这个地址对应的存储单元存储的数也是一个地址,而不是数值,而这个被存储的地址对应的存储单元存储的数据才是真正的相应类型的数值。二、基类型不同 例如int *p1,**p2;两者本质上都是
指针
,但是两者的基类型不同。p1的基类型是int,换句话说p1指针指向的是int型的数据...
c语言
指针
引用数组元素,从p=a开始解释下此程序
答:
1. p=a; //使int*
指针p
指向数组a的首元素,即a[0]的地址—&a[0]。2. 第一个for循环语句,就是通过指针p来对数组a的各个元素赋初值,*p的意思就是获取指针p所指向的内存单元的值,初始就是对a[0]赋初值i,*p++=i,等价于:p=i; //对p指向的当前数组元素赋值,等价于a[i]=i...
指针
赋值时,*p=&i和p=&i有什么区别
答:
p
=&i的结果是*p的值是变量i的地址;p=&i的结果是p指向变量i的地址,*p的值是i
C语言中数组
指针
关于p=a,p=&a等问题!!
答:
问题3:对于int (*p)[4]代表的是int型数组
指针
,步长是(4 * sizeof(int))。首先说明的是对于第7行程序打印的结果不是a[3]对应的值,这样的操作属于越界(即访问到数组外的内存)。对于(*p)[3]表达式代表*(p + 3),因为p步长为16字节(假设int型数据占4字节),所以*(p + 3)其实访问的...
C语言
指针
,如果p=&k,则
p
是指针变量,那么*p也可以看做指针变量?形参为啥...
答:
注意分清 语句和声明。外貌都是 *p, 在语句 和 在声明 意思不同。---
p
=&k; 这显然是语句。语句里 &k 是变量 k 的 地址,能接受赋值的 p 是
指针
。所以,它们的声明很可能是:int k; int *p;--- 形参 书写 是用 声明的形式,例如:void add(int a, int b, int *p);形参 i...
p
是一个指向
指针
的指针。为何printf("%s“,* p)和printf("%d",* p...
答:
我想你搞错了,第一个printf输出的是一串数字。第二个printf输出字母,因为你设置了输出的格式,第一个printf("%d\n",*
p
);输出的是整数,其实“Follow me“在内存中的地址。第一个 printf("%s\n",* p);要求输出的是字符串,这样就输出了字母了。下面几个的输出也是相同的原理。而利用cout输出...
计算机c语言中
指针
变量p自增1 什么意思
答:
自增就是+1的意思,地址+1就是指向下一个元素。例如 int array[3]={1,2,3};int*p=array;//此时
p
指向array[0]p++;//这里的p自增,执行后p指向array[1]
C++程序设计:当
指针
变量p指向字符串变量a时,*(p+1)是不是就是a中的第...
答:
是的。(
p
+1)就是a[1],即a中的第二个字符。如:char a[]="123456";char *p=a;则*(p+1)就是字符2。
已知
p
是
指针
变量,p='\0'是什么意思,不应该是*p='\0'吗
答:
p
='\0' 是 给地址 赋0。(也可理解为 null).地址 是 unsigned long int 类型, 无符号长整型,4字节。例如:int *p;p='\0';printf("%p %d \n", p, p);输出: 00000000 0
C语言
指针
*p中 p+1什么时候是指向下一元素地址,还是指向下一字节?_百 ...
答:
看你申明的
p
的类型 如果你申明char* p,那p+1就是指向下一个char型的地址;如果你申明int* p,那p+1就是指向下一个int型的地址;如果你申明int* p[10](注意哦,这个
指针
保存的是数组的首元素地址的地址!!并不是数组首元素的地址),那p+1就是指向下一个int[10]的地址,也就是下一个...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜