指针(一)

简介: 系统给内存的每一个字节,分配一个编号,这个编号就是内存地址

一:内存地址的概述


系统给内存的每一个字节,分配一个编号,这个编号就是内存地址


20200322204240974.png


指针:就是内存的地址编号 指针就是地址 地址就是指针


二:指针变量


指针变量:本质是一个变量,只是这个变量不是存放普通的10 20数据 而是存放的内存的编号(地址/指针)


20200322204648592.png


在32位平台所有的地址都是4字节


三:定义指针变量

void test02()
{
//普通变量的空间
int num = 10;
printf("&num = %p\n", &num);
//%p是以十六进制输出地址编号
//定义一个指针变量 保存 num的地址
//1、*修饰 指针变量名 *p
//2、保存啥类型变量的地址 就用该类型定义一个普通变量 int num;
//3、从上往下整体 替换//指针变量 变量名为p 在定义的时候 *修饰p为指针变量
int *p;printf("sizeof(p) = %d\n", sizeof(p));
//指针变量 和 普通变量的地址 建立关系
p = #// p == &num
printf("p = %p\n", p);
printf("&num = %p\n", &num);
}


四:指针变量的使用


使用p对所保存的地址空间内容进行读写操作


void test03()
{
int num = 10;
//在定义中 *修饰p为 指针变量
int *p;
p = #
//*p 在使用中 *修饰p 表示 取p所保存的地址编号对应空间的内容
//*p == num
//p == &num
//printf("num = %d\n",num);
printf("num = %d\n",*p);//10
//num = 100
*p = 100;
printf("num = %d\n", num);
//scanf("%d", &num);
scanf("%d", p);//p == &num
printf("num = %d\n", num);
}
相关文章
指针的部分应用
指针的部分应用
47 0
|
1月前
|
编译器
指针初步讲解(下)
指针初步讲解(下)
30 2
|
6月前
|
编译器
深入理解指针(2)
深入理解指针(2)
41 2
|
2月前
|
存储 C语言
C 指针详解
C 语言中的指针是一个强大而重要的概念,用于间接访问变量的存储地址。指针是一个变量,存储其他变量的地址,类型与其指向的数据类型相关。基本操作包括取地址 (`&`) 和解引用 (`*`)。指针使用前需初始化,可指向有效地址或为空 (`NULL`)。指针支持算术运算,可用于数组和函数。通过 `malloc` 和 `free` 可管理动态内存。多级指针允许存储指针的地址。使用指针时需注意初始化、防止内存泄漏及避免访问无效地址。掌握指针是精通 C 语言的关键。
47 13
|
6月前
|
存储 程序员 C++
c++指针
c++指针
36 1
|
6月前
|
存储 C++
19指针
19指针
30 0
|
6月前
指针(2)
指针(2)
33 0
|
人工智能 程序员 C语言
C 中的指针
C 中的指针
|
存储 算法 C语言
你是真的“C”——详解指针知识
前言🙌 1、 指针是什么?🙌 2、指针和指针类型🙌 2 、1指针+-整数 2 、 2指针的解引用 3、 野指针🙌 3、 1野指针成因 3、 2如何规避野指针 4、指针运算🙌 4、1 指针+-整数 4、2 指针-指针 4、3 指针的关系运算 5、指针和数组🙌 6 、 二级指针🙌 7、指针数组🙌 总结撒花💞
94 0