C语言学习回顾(5)

这篇博客回顾了C语言中指针的基础知识,包括指针的定义、指针与地址的关系、不同类型指针访问字节数的区别、野指针的避免以及指针运算。通过实例讲解了如何初始化指针、如何避免野指针问题,并探讨了指针在数组和字符串操作中的应用,以及如何通过指针实现strlen()函数。最后强调了指针、数组和地址的区别,帮助读者巩固相关概念。
摘要由CSDN通过智能技术生成

这份回顾主要是指针的初级内容,是前天刚学的,由于今天晚上刚好有时间写回顾,就把上次没做好的回顾(4)和这篇放在一起了,C语言中的指针一直是很头疼的一个学习内容,但今天大可不必害怕,因为都是一些很简单易懂的理论内容。

/*指针是编程语言中的一个对象,利用地址,它的值直接指向该变量单元。
因此,将地址形象化的称为指针,意思是通过它能找到以它为地址的内存单元*/

首先给出老师课件对于指针的定义,我们学习一个新的内容的时候,对于该内容的定义一定是要牢记的,这是教学者将该内容浓缩后的精华,通过这份定义,我们可以对于指针的内容更加容易上手。

int main()
{
	int a = 10;
	int* p = &a; // 指针变量
	// 指针就是变量,用来存放地址的变量。存放在指针中的值都被当作地址处理
	return 0;
}

int main()
{
	//printf("%d\n", sizeof(char*));
	//printf("%d\n", sizeof(int*));
	//printf("%d\n", sizeof(short*));
	//printf("%d\n", sizeof(double*));
	/*为什么要区分类别呢*/

	int a = 0x11223344;
	int* pa = &a;
	*pa = 0;
	// char* pc = &a;
	// *pc = 0;
	// 指针类型决定了指针进行解引用操作的时候,能够访问空间的大小
	// int* p  *p 能够访问 4个字节
	// char* p  *p 能够访问 1个字节
	// double* p  *p 能够访问 8个字节
	// printf("%d\n",pa);
	// printf("%d\n", pc);
	return 0;
}

第一个main函数其实不用管,就是简单的使用一下指针与地址

这里需要注意第二份main函数里的各个意义,尤其是对不同类型的指针可以访问字节数的区分,要分外牢记。是可以出题的。

int main()
{
	int a = 0x11223344;
	int* pa = &a;
	char* pc = &a;
	printf("%p\n", pa);
	printf("%p\n", pa+1);  //加了4
	printf("%p\n", pc);
	printf("%p\n", pc+1); // 加了1
	// 指针类型决定了:指针走一步走多远(指针的步长) 
	return 0;
}		[7]	0	int



                
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值