指针的类型

来源:互联网 发布:淘宝怎么修改店铺名称 编辑:程序博客网 时间:2024/05/28 16:30

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

基本类型指针定义为: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; 

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

 

 

原创粉丝点击