C语言知识点中的指针如何分析
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,C语言知识点中的指针如何分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。指针是C的灵魂,没有学会指针就相当于没有学过C指针的定义:指针
千家信息网最后更新 2025年11月07日C语言知识点中的指针如何分析
C语言知识点中的指针如何分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
指针是C的灵魂,没有学会指针就相当于没有学过C
指针的定义:指针就是内存单元的编号(编号>=0)
指针变量是存放内存单元编号的变量(存放地址的变量)
指针 & 指针变量是不同的
e.g:普通变量a的地址是1000H,可以称a的指针是1000H 但是绝对不能说a的指针变量是1000H
指针是一个操作受限的非负整数:比如2个地址相乘是没有意的 故不能做乘法操作,所以说指针是受限的
指针为什么重要?
(1).快速的传递数据,减少内存的使用
(2).可以使函数返回一个以上的值
(3).可以直接访问物理硬件
(4).可以方便的处理字符串
(5).是理解面向对象语言中"引用"功能的基础
(6).可以表示一些复杂的数据结构
指针的分类:
1.基本类型指针(重点):int *i//变量名:i int *表示i变量存放的是int类型变量的地址
e.g:
int *i; int a = 10; i = a//error:i & a 虽然都是变量 但是i 是指针变量 a是普通变量 类型不同不能赋值 i = &a;//True &是取地址符号 &a表示取变量a的地址;把a的地址赋值给指针变量i printf("*i = %d\n",*i)//输出结果:*i = 3 i获取到a的地址后*i 表示指向了a *i = a;经典的例子加深对指针的理解:互换2个数字(之前使用的是普通变量,现在使用指针&函数)
#includevoid swap(int p,int q){ int t; t = p; p = q; q = t; return;}//swap 不能完成互换,只是互换了形参的值 主函数中的实参值并未互换 void swap1(int *p,int *q){ int *t; t = p; p = q; q = t;}//swap1 不能完成 a b的值互换,只是互换指针变量 void swap2(int *p,int *q){ int t; t = *p;//*p =a ,*q=b *p = *q; *q = t;}//swap2 互换成功 int main(void){ int a,b; a = 5; b = 9; swap(a,b); printf("a = %d,b = %d\n",a,b); swap1(&a,&b); printf("a = %d,b = %d\n",a,b); swap2(&a,&b); printf("a = %d,b = %d\n",a,b); return 0;}/* 输出结果: a = 5,b = 9 a = 5,b = 9 a = 9,b = 5 总结:思考:printf 为什么不能放在被调函数中? 题目的要求是:互换a b的值 而非被调函数的值互换 测试结果: 1.swap只是被调函数的形参值互换了 主函数中的实盘并没有互换 2.swap1 只是互换 a b地址的存储位置 并没有互换 a b地址中的值 **3.swap2 为什么会成功?原因很简单哦 swap2的功能是把 a b地址中的值互换了 简单说:a b是被划分出来的2个静态地址 5,9是存放在地址中的值 swap2功能是把 2个地址中的 5 9互换 一旦地址中的值达到互换即 a b的值完成了互换***/
看完上述内容,你们掌握C语言知识点中的指针如何分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
指针
变量
地址
函数
只是
语言
普通
内存
功能
类型
结果
知识
知识点
分析
不同
成功
内容
单元
原因
数据
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中学生网络安全分析
网络安全技术专业排名
标本零连不上服务器
阿里云服务器图形界面怎么弄
济宁服装erp软件开发
网络技术管理软件
文科生网络安全
网络安全 压力
近几年网络安全原理论文
太仓运营网络技术咨询热线
梦幻西游选择服务器
安徽数据网络技术服务价目表
获取服务器
sql数据库代码编辑
崇明区工业软件开发费用
服务器在国外的云盘
杀毒软件有数据库吗
网络安全事件监管部门
户外体育网络安全
在哈市软件开发月工资多少钱
电子商务的网络安全分析
数据库逻辑模型的系统结构图
新疆博联网络技术有限公司
数据库实训的主要目的
如何删除数据库表中的某一元组
qq引流服务器
数据库基础的作用及意义
网状模型数据库图
电脑有地址连不上服务器
服务器功率2200w