指针的类型

    技术2022-05-20  45

    指针分为基本类型和特殊数据结构指针。

    基本类型指针定义为:type * ptr  ;

    指针的实质是一个地址变量,即它存储的数据就是数据的地址。

    调用方式为:* p=& 变量名 ,

    const type* p ;表示p 它存放的是一个常量的地址,但是它是可变的。也就是说p它是存放常量地址的指针变量。

    type * const p ;则表示p就是一个常量地址,它是不可变的,也就不可以对它赋值。所以在定义它的时候要给它初始化。

     

    基本指针有一类特殊的,它就是数组指针,和指针数组

    数组指针 是指针,定义方式为 type* p[] ;

    指针数组  它是数组,每个元素是 指针 ,所以它是指向多维 数组的,

    定义方式: type(*p)[n],它也表示p 指向一个n个元素的一个数组。

     

    结构指针:

    假如现在定义了一个结构体 A

    struct A{

    type1 a;

    type2 b;

    };

    则结构体指针的定义为  A* p ;

    调用方式为: p->a  或 (*p). a ;

     

    函数指针:

    函数指针归根揭底,它仍旧是指针,但它还是指向函数的,所以它有参数。故定义方式为:

        return_type(*p)(parametre_list);

    它的赋值为:  p=function_name ;

    调用方式为: p(parametre_list);

     

    一类就是结构体成员指针:

    因为它是隶属于结构体,所以它要含有域作用符 ,type struct_name::*p; 

    且 它不能单独使用,必须和结构体同时使用。

     

     


    最新回复(0)