指针与变量的关系

定义变量:按类型分配空间
    类型 变量名;
    类型 数组名;
初始化:
引用变量:引用内容
   1、自身内容:  变量名;  *地址
       a
       数组名[下标]
       
       
1、指针与变量的关系:
  1、见源代码
2、指针与数组的关系:
  2.1指针与一维普通数组
  2.2指针数组:专门用于存放指针的数组
        类型* 数组名[长度]    eg:  int* buf[10]
        引用元素:数组名[下标法]
  2.3指针与二维数组: int buf[10]   int buf1[3][4]
       一维数组名:指向是该行第一列
            buf+0第一列   buf+1第二列
       二维数组名:指向是某一行的地址
            1、buf1+0第一行  buf1+1 第二行        buf1行地址
            2、由于buf1[0] buf1[1] buf1[2]三个一维数组成的一个int buf1[3][10]的二维数组
               所所以buf1[0]等价一维数组的名字(列)
                 buf1[0]+0第一行的第一列  buf1[0]+1第一行的 第二列的地址
                 
            3、引用内容:必须确定到行和列
                buf1[2][2],*(buf1[2]+2),*(*(buf1+2)+2),(*(buf1+2))[2]
  
          二维指针变量:   类型 (*指针变量)[列]
   2.4指针与结构体变量的关系:
      结构体:自定义类型
      结构体变量:分配空间按类型分配    
      2.4.1定义结构体指针变量: struct 类型*  变量名
      2.4.2引用成员:
            变量.成员;
            指针->成员;
            (*指针).成员;
            注:指针变量必须指向一个元素
优先级:       
          . >  *  > 运算符  > 逻辑运算符 >  赋值        
      2.4.3结构体指针数组:
            类型* 数组名[长度]; 
                struct people* buf[10];

猜你喜欢

转载自blog.csdn.net/cs13797778767/article/details/81222424