指针入门

(1)指针变量的定义(地址 == 指针)

指针就是内存单元的地址,也就是内存单元的编号。

用一个变量存放地址这种数据称为指针变量。

 

指针的一般形式:类型说明符 * 变量名;

*表示这是一个指针变量

变量名即为所定义的指针变量名

类型说明符即基类型,表示指针变量所指向变量的数据类型

 

int * p1;//指针变量p1用来保存某个整型变量的地址

char * p2;//指针变量p2用来保存某个字符型变量的地址

扫描二维码关注公众号,回复: 2297577 查看本文章

float * p3;//指针变量p3用来保存某个单精度类型变量的地址

double * p4;//指针变量p4用来保存某个双精度类型变量的地址

 

(2)指针变量的引用

指针变量必须先定义再赋予一个内存地址。下面介绍两个相关的运算符:

 

取地址运算符 &  

作用:取得变量的地址

一般形式:& 变量

 

指针运算符(间接访问符或解引用) *

作用:表示该指针所指的变量

一般形式:int a = 10;//整型变量存放整型值

int * p = &a;//整型地址(指针)变量存放整型地址值

* p = 100;

 

实际上,取地址运算符 & 和指针运算符 * 是一对逆运算符

 

一般 * 有三类:1.乘        a * b

             2.定义指针  int * p = &a;

             3.解引用    * p = 200;

 

 

3)指针的使用

#include<stdio.h>
int main()
{
	int a = 100;//定义一个整型变量a为100
	printf("%d\n",a);
	int *p;//定义一个整型指针变量P
	p=&a;//将a的地址赋值给p
	*p=200;//*p跳到a的地址处,赋值为200
	printf("%d\n",a);
	return 0;
}

4)二级指针

#include<stdio.h>
int main()
{
	int a = 20;
	int *p = &a;//定义指针变量 *p,将整型变量a的地址赋值给p
	int **pp = &p;//定义二级指针变量 **pp,将整型指针变量p的地址赋值给pp
	* pp = &a;//p = &a
	** pp = 1000;//通过pp将a的赋为1000
	printf("%d\n",a);
}


猜你喜欢

转载自blog.csdn.net/tuji67/article/details/80556161
今日推荐