指针与链表结构理解
#include<stdio.h>
int main(void)
{
 int a=3,*p;
 p=&a;
 printf("a=%d,*p=%d\n",a,*p);
 *p=10;
 printf("a=%d,*p=%d\n",a,*p);
 printf("Enter a:");
 scanf("%d",&a);
 printf("a=%d,*p=%d\n",a,*p);
 return 0;
           解析:
          1.定义×××变量a和×××指针p :int a=3,*p;
          2.把变量a的地址赋给指针p,即p指向a :p=&a;
          3.输出变量a的值和指针p所指向变量的值 : printf("a=%d,*p=%d\n",a,*p);
          4. 对指针p所指向的变量赋值,相当于对变量a赋值: *p=10;
          5. 输出变量a的值和指针p所指向变量的值 : printf("a=%d,*p=%d\n",a,*p);
         6.输入a:printf("Enter a:");
             scanf("%d",&a);
         

        指针变量是用来储存地址的,而一般变量是储存数值的。一个指针变量占用四个字节。格式为类型名*指针变量名。
      取地址运算符为&。通过它获取地址值。
       *为间接访问运算符。

             动态链表结构不需要联续的存储空间,链表的结点之间是通过指针进行连接的。与数组结构相对比,链表进行插入或删除的时候不需要移动大量的元素,只需要修改相应的指针就可以了。所以,链表结构特别适合大量插入或删除的程序。
           链表结构中包含了两项:1,data变量,结构体类型变量,是链表结构的数据部分。
                                2,指针部分,指针名是*next,通过它可以指向下一个结点。*link也是一个小指针。
          在程序中需要用链表的地方,可直接写一个Node类型就可以了。



                                                                     计科 15-2班   150809227