指针类型

参考:Pointers (C++)

指针是c/c++相对于其他语言来说最不同的内容之一。通过指针的使用,c/c++可以更加自由的操作内存地址,下面学习指针的相关概念和用法

语法

通用语法如下:

[storage-class-specifiers] [cv-qualifiers] type-specifiers declarator ;

简化版本如下:

* [cv-qualifiers] identifier [= expression]
  1. 声明说明符
    • 可选的存储类说明符
    • 可选的cv限定符,应用于要指向的对象的类型
    • 类型说明符:表示要指向的对象类型的类型的名称
  2. 声明符
    • *运算符
    • 可选的cv限定符,应用于指针本身
    • 标识符
    • 可选的初始化器

函数指针

指向函数的指针的声明符如下所示:

(* [cv-qualifiers] identifier )( argument-list ) [cv-qualifers] [exception-specification] [= expression] ;

指针数组

指针数组(array of pointer)的语法如下:

* identifier [ [constant-expression] ]

示例

  • 声明指向char类型对象的指针
char *pch;
  • 声明指向unsigned int类型的静态对象的常量指针
static unsigned int * const ptr;