C语言------指针 从入门到精通

最近在老师在讲数据结构,然后发现自己的C指针内容好多都遗忘了,在此做了个总结,趁机巩固下C语言的知识。

基本指针

基本知识点归纳:

  1. 指针就是地址,地址就是指针。
  2. 指针变量就是存放地址的变量。
  3. 如果一个指针变量指向一个普通变量,则 *指针变量 就完全等普通变量。
  4. 地址就是内存单元的编号。
  5. 指针变量就是存放地址的变量
  6. 指针是一个操作受限的非负整数(只能减,不能加、乘除)
# include <stdio.h>

void main()
{
   
	

	int * p; //P 存放的是整型变量的地址,int * 表示p变量存放的类型是int型的地址
				// int * p; 不表示定义了一个名字为*p的int型变量
				//而是这样理解:p为变量名,P 变量的数据类型是 int * 类型
				// int * 类型 就是存放int变量的地址的类型
	int a = 3;  //p = a; error 原因:因为 a为int型 P为int *型 
	float b = 6.0;  //P = &b; b为float &b为float*型 P为int*型  类型不同不能相互赋值
	p = &a;
	/*
		1.p保存了a的地址,因此p指向a;
		2.p不是a,a也不是p,更确切的说修改p的值不影响a的值,修改a的值不影响p的值
		3.如果一个指针变量指向某个普通变量,则  
				*指针变量 就等价于 普通变量
			例子:
				如果p是个指针变量,并且p存放了普通变量a的地址,则p指向普通变量a
				*p 就完全等同于 a
				或者说: 在出现*p的地方都可以替换成a
						在出现a的地方都可以替换成*p
	*/

}

常见错误:

  1. 指针变量未初始化,导致修改内存中的其他值。
# include <stdio.h>
int main(void)
{
   
	int * p ;
	int i = 3;
	*p = i;
	printf("%d\n",*p);
	return 0;
}

/*
	将3赋值给以P的内容为地址的空间内,修改了p内存中保存地址的数据的值,这个地址并未申请,不能修改。
*/
  1. 地址错误
# 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程内容100+集 C 语言编程实战课程,由 WangTeacher 主讲 。大神手把手教你编程,精心制作一部视频教学实战课程,细致到开发环境的搭建,都是手把手传授。并结合 15 年的编程经验,把最先进的软件开发流程和编程技巧融合到课程中,代码示例涵盖了 C 语言的每一个知识点,你值得拥有!第一章 基础技能篇:C 语言简介,基础语法和规则,数据类型,变量,运算符,流程控制,数组,字符串,函数,结构体,联合体,指针,文件操作,代码调试等知识点。第二章 实战技能篇:编程规范、内存管理、Makefile、进程内存布局、动态库、静态库、链表、排序算法、C 函数库介绍、递归函数、多进程调试等适用技能。第三章 案例分享篇:学员管理系统,从需求设计,架构设计,到模块设计,再到各个模块编码,学会从专业软件开发的角度去理解编程,他确实就是一门艺术。第四章 面试题篇:所有付出了时间和精力的学习,都是为了有回报,学习计算机技术更是如此,通过分析常见面试题,可以帮助你查漏补缺,更快、更容易实现回报。第五章 补充课程:在学员学习的过程中如果出现一个疑问,或者不够深入讲解的地方进行补充的课程。  课程特色案例:从专业程序员的角度思考问题和编写代码。实用:课程中融合了多年总结的编程技巧。快速:最快掌握编程的方法就是模仿和刻意练习。方式:脱离实践的传道都是扯蛋,能用代码演示的地方,绝不废话,每课都是编码,以最接近专业程序员日常的方式,手把手带你入行,和大神结对编程就是高效。 适合人群小学中学生,专科本科生,就业想转行生;逻辑思维差,空间想象差,编程可以改善;平时爱唱歌,却五音不全,写程序很合适;想尽快挣钱,迎娶白富美,达到人生巅峰。 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值