指针的部分应用

个人主页:点我进入主页

专栏分类:C语言初阶      C语言程序设计————KTV       C语言小游戏     C语言进阶

欢迎大家点赞,评论,收藏。

一起努力,一起奔赴大厂。

目录

内存

单个指针所占用的字节

指针

 指针在数组的使用


内存

        说到指针我们可以先看内存,内存被分为以字节为单位的单元,内存又分为栈区,堆区,静态区,栈区存放临时变量,形参,局部变量;堆区存放malloc等的变量;静态区存放全局变量,静态变量;

单个指针所占用的字节

在64位中每种类型占用8个字节,代码如下:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
	printf("char=%d", sizeof(char*));
	printf("int=%d", sizeof(int*));
	printf("double=%d", sizeof(double*));
	printf("float=%d", sizeof(float*));
	return 0;
}

 在32位电脑桌每种类型占用4个字节(由于电脑是64位,不方便展示,但代码相同,想验证的小伙伴可以试试)

指针

我们可以建立一个指针,代码如下

#include <stdio.h>
int main()
{
	int a = 0;
	int* p = &a;
	printf("*p=%d", *p);
	printf("a=%d", a);
	return 0;
}

运行结果如下:

 进入调试我们可以对a进行取地址

 此时a的地址为0x0000006B362FF534

 我们再*p的地址p

 

地址为 0x0000006B362FF534

 指针在数组的使用

代码如下

 对于数组的地址,arr便是数组的首地址,&arr[0],p,都是数组的首地址,故我们可以得到arr=p=&arr[0];故我们可以得到:

需要代码可以查看https://gitee.com/steventom/class/commit/75370c39090ae5d7b43259fb021a51570d53d4ff

希望各位一键三连

猜你喜欢

转载自blog.csdn.net/Infernal_Puppet/article/details/131295654