运行结果
运行结果
注意:
动态存储分配函数 void free(void *p) 功能:
注意:
1.这两句话区别很大
2.
googs
head
定义了head对象,这里head是在栈空间上的变量,并且有相应的内存空间
3.
p
=
&head就是领指针p指向了head的内存空间,以后就可以用p代替head,进行相关的操作了
4.
p
=
NULL,说明p不指向任何内存空间
5.
p->lc在这里还没有为lc分配内存空间
Int*p:第一级指针,表示p点所在地址是一个100Int类型的值,p被声明为一个指向整数的指针,并且为这个指针分配了存储空间。但在这种情况下,它是一个随机数,我们称之为指向一个不确定的内存地址。
当用户说“direct*p=5”时,在一个不可预知的内存地址上写入一个整数5。这是不允许的,并可能导致程序崩溃。
P = &a然后,将现有变量a的地址写入指针p,我们说指向a的指针可以通过变量p对变量a进行正常操作。
扩展资料:
指针:
指针的表示法是地址,核心是指向关系的指针,操作符“*”的作用是根据关系访问所指向的对象。如果版本与B有指向关系,则A为B的地址,“*A”表示通过该指向关系间接访问B。
如果B的值是一个指针,它指向C,BC地址,间接访问,CB“*”如果C是整数,真实的,或结构,如类型变量或数组元素对于这些类型的数据,BC(即地址)是通用的指针,即主要指的是右边的针,持有一级指针变量指针变量。