资料介绍
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。
先声明几个指针放着做例子:
例一:
(1)int*ptr;
(2)char*ptr;
(3)int**ptr;
(4)int(*ptr)[3];
(5)int*(*ptr)[4];
指针的类型
从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各个指针的类型:
(1)int*ptr;//指针的类型是int*
(2)char*ptr;//指针的类型是char*
(3)int**ptr;//指针的类型是int**
(4)int(*ptr)[3];//指针的类型是int(*)[3]
(5)int*(*ptr)[4];//指针的类型是int*(*)[4]
怎么样?找出指针的类型的方法是不是很简单?
指针所指向的类型
当你通过指针来访问指针所指向的内存区时,指针所指向的类型决定了编译器将把那片内存区里的内容当做什么来看待。
从语法上看,你只须把指针声明语句中的指针名字和名字左边的指针声明符*去掉,剩下的就是指针所指向的类型。例如:
(1)int*ptr;//指针所指向的类型是int
(2)char*ptr;//指针所指向的的类型是char
(3)int**ptr;//指针所指向的的类型是int*
(4)int(*ptr)[3];//指针所指向的的类型是int()[3]
(5)int*(*ptr)[4];//指针所指向的的类型是int*()[4]
在指针的算术运算中,指针所指向的类型有很大的作用。
指针的类型(即指针本身的类型)和指针所指向的类型是两个概念。当你对C越来越熟悉时,你会发现,把与指针搅和在一起的 “类型 ”这个概念分成 “指针的类型 ”和 “指针所指向的类型 ”两个概念,是精通指针的关键点之一。我看了不少书,发现有些写得差的书中,就把指针的这两个概念搅在一起了,所以看起书来前后矛盾,越看越糊涂。
指针的值,或者叫指针所指向的内存区或地址
指针的值是指针本身存储的数值,这个值将被编译器当作一个地址,而不是一个一般的数值。在32位程序里,所有类型的指针的值都是一个32位整数,因为32位程序里内存地址全都是32位长。 指针所指向的内存区就是从指针的值所代表的那个内存地址开始,长度为sizeof(指针所指向的类型)的一片内存区。以后,我们说一个指针的值是XX,就相当于说该指针指向了以XX为首地址的一片内存区域;我们说一个指针指向了某块内存区域,就相当于说该指针的值是这块内存区域的首地址。
指针所指向的内存区和指针所指向的类型是两个完全不同的概念。在例一中,指针所指向的类型已经有了,但由于指针还未初始化,所以它所指向的内存区是不存在的,或者说是无意义的。
- C和C++经典著作《C和指针》0次下载
- labview的55个经典实例汇总256次下载
- 一文讲通C语言指针资料下载10次下载
- PROFIBUS组态经典应用实例8次下载
- PLC实例讲解之加法指令写流水灯资源下载10次下载
- python的经典实例相关讲解9次下载
- C语言指针与指针变量的简介和运算实例程序免费下载14次下载
- C语言指针的表达式实例程序说明4次下载
- 100例C语言经典算法题目和实例程序免费下载62次下载
- C51语言的基础知识点实例讲解12次下载
- 如何轻松理解C语言指针的详细资料说明11次下载
- 轻松理解C语言指针的实验和详细资料说明10次下载
- 数组和指针的详细讲解0次下载
- C语言_指针总结_经典讲解10次下载
- C语言实例解析精粹_曹衍龙0次下载
- 详解C语言指针底层基本原理909次阅读
- void指针465次阅读
- C语言中的悬空指针和野指针是什么意思?751次阅读
- C语言中指针的定义与使用1695次阅读
- C语言中指针的命令行参数789次阅读
- C语言指针和数组的区别1476次阅读
- C语言指针相关的概念、语法及使用场景1695次阅读
- 单片机C语言:指针应用2272次阅读
- C语言函数中的传值和传指针到底有什么区别4741次阅读
- C语言中的“二级指针”该如何理解1.1w次阅读
- 指针和数组都是C语言的精髓所在 两者有何联系区别2965次阅读
- 嵌入式开发之C语言的指针2884次阅读
- 为什么C语言要引入指针_引入指针的好处是什么2.1w次阅读
- C语言使用中指针和内存泄漏的问题和解决方案3981次阅读
- 基于C语言中指针的基本用法解析4574次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB |1490次下载 |免费
- 2单片机典型实例介绍
- 18.19 MB |92次下载 |1积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB |27次下载 |1积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB |18次下载 |4积分
- 5开关电源原理及各功能电路详解
- 0.38 MB |10次下载 |免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB |4次下载 |免费
- 7蓝牙设备在嵌入式领域的广泛应用
- 0.63 MB |3次下载 |免费
- 89天练会电子电路识图
- 5.91 MB |3次下载 |免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB |234313次下载 |免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB |66304次下载 |免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB |51209次下载 |免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB |51043次下载 |免费
- 5555集成电路应用800例(新编版)
- 0.00 MB |33562次下载 |免费
- 6接口电路图大全
- 未知 |30320次下载 |免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB |28588次下载 |免费
- 8开关电源设计实例指南
- 未知 |21539次下载 |免费
总榜
- 1matlab软件下载入口
- 未知 |935053次下载 |免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB |537791次下载 |免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 |420026次下载 |免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB |234313次下载 |免费
- 5Altium DXP2002下载入口
- 未知 |233045次下载 |免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 |191183次下载 |免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M |183277次下载 |免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 |138039次下载 |免费
评论
查看更多