C语言中的指针(学习心得)

本文详细介绍了C语言中的指针概念,包括指针的类型、规避野指针的方法、指针运算规则以及指针与数组的关联。通过案例分析,阐述了指针向前或向后跳过字节数、解引用访问字节数以及指针关系运算的细节,旨在帮助读者深入掌握C语言指针的使用。
摘要由CSDN通过智能技术生成

目录

一、指针是什么?

二、指针和指针类型

(1)指针的类型决定了指针向前或向后跳过几个字节

(2)指针的类型决定了对指针解引用的时候访问几个字节

 三、规避野指针

四、指针运算

(1)指针+-整数

(2)指针-指针=指针和指针之间元素的个数

(3)指针的关系运算

五、指针和数组


一、指针是什么?

指针是内存单元中一个最小单元的编号,即地址。

口语中所说的指针是指指针变量,是用来存放内存地址的变量。

案例:

#include<stdio.h>
int main()
{
	int a = 10;//在内存中开辟一块空间
	int* p = &a;//这里我们对变量a,取出它的地址,可以使用&操作符
	//a变量占用4个字节的空间,这里是将a的4个字节的第一个字节的地址存放在p变量中,p就是一个指针变量
	return 0;
}

另外,在32位机器上,指针变量大小是4个字节;在64位机器上,指针变量大小是8个字节。


二、指针和指针类型

char* pc = NULL;//存放char类型变量的地址
int* pi = NULL;//存放int类型变量的地址
short* ps = NULL;//存放short类型变量的地址
long* pl = NULL;//存放long类型变量的地址
float* pf = NULL;//存放float类型变量的地址
double* pd = NULL;//存放double类型变量的地址

(1)指针的类型决定了指针向前或向后跳过几个字节

案例:

#include <stdio.h>
int main()
{
	int n = 10;
	char* pc = (char*)&n;
	int* pi = &n;
	printf("%p\n", &n);
	printf("%p\n
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

发烧的CPU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值