C指针详解与链表实现

本文探讨了C语言中的指针概念,强调了指针在版本迭代中的便利性,介绍了malloc函数以及指针类型的重要性。接着,文章详细阐述了如何用结构体定义链表,包括创建链表的步骤和头指针的角色,提供了插入节点的代码实现。
摘要由CSDN通过智能技术生成

一直以来,对于c语言的指针就一知半解,数据结构课程多半是用c指针实现的,所以重新学习了一下

代码来源:《啊哈,算法》 人民邮电出版社、中国工信出版集团 啊哈磊著

(一)指针

使用指针的原因:方便版本迭代,假设你设计的程序已经发布或者交付使用,但是你发现要做出新的修改(增加存储空间等等),用指针可以更简单便捷的进行修改。

#include<stdio.h>
#include<stdlib.h>
int main(){
	//1. 
	int a=10;
	int *p;		//定义一个指针p 
	p=&a;		//指针p获取变量a的地址 
	printf("%d\n",*p); 	//输出指针p所指向的内存中的值 
	 
	//2.
	p=(int*)malloc(sizeof(int));	//指针p获取动态分配的内存空间地址 
	*p=20;				//向指针p所指向的内存空间中存入10 
	printf("%d\n",*p);	//输出指针p所指向的内存中的值 
	
	return 0;
}
注:1.malloc——分配空间的函数被包含在"stdlib.h"头文件里

       2.malloc函数的返回类型是void*类型,表示未确定类型的指针,在C和C++中,void*类型的指针可以强制转换为任何其他类型的指针。我们将其强制转化为整型指针,以便告诉计算机这里的4个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值