1 指针的概念
所谓的指针,也称为指针变量,其内容储存了另一个变量的内存地址。
2 声明指针类型的变量
在C语言声明一个指针类型变量,也就是定义了一个指针的语法如下:
指向的变量的类型名 *指针变量名;
这里,指针变量的类型是“指向的变量的类型名 * ”,而不是“指向的变量的类型名”。列如
int *p
这里,变量p的类型为int*,而不是int、指针变量p可以储存任何int类型的变量的地址。
3 指针的使用
我们可以使用间接运算符*,来访问被一个指针指向的变量的值。假设我们声明了如下变量:
int number = 15;
int *pointer=&number;
int result = 0;
因为指针变量pointer包含了变量number的地址,所以可以按照如下方式,在一个求和的表达式中使用它:
result = *pointer + 5;
表达式*pointer等于pointer包含的地址中存储的值,而存储在number中的值为15,所以result的值最后为20.
说明:
间接运算符*可以让我们访问被一个指针指向的变量的值。
取址运算符&可以让我们获得一个变量的内存地址。
所谓的指针,也称为指针变量,其内容储存了另一个变量的内存地址。
2 声明指针类型的变量
在C语言声明一个指针类型变量,也就是定义了一个指针的语法如下:
指向的变量的类型名 *指针变量名;
这里,指针变量的类型是“指向的变量的类型名 * ”,而不是“指向的变量的类型名”。列如
int *p
这里,变量p的类型为int*,而不是int、指针变量p可以储存任何int类型的变量的地址。
3 指针的使用
我们可以使用间接运算符*,来访问被一个指针指向的变量的值。假设我们声明了如下变量:
int number = 15;
int *pointer=&number;
int result = 0;
因为指针变量pointer包含了变量number的地址,所以可以按照如下方式,在一个求和的表达式中使用它:
result = *pointer + 5;
表达式*pointer等于pointer包含的地址中存储的值,而存储在number中的值为15,所以result的值最后为20.
说明:
间接运算符*可以让我们访问被一个指针指向的变量的值。
取址运算符&可以让我们获得一个变量的内存地址。