指针是什么意思啊?指针是什么
本文目录
- 指针是什么意思啊
- 指针是什么
- 指针是什么意思
- C语言的指针,又什么用能用通俗的话讲讲什么是指针吗最好结合例子
- 什么是指针变量
- 在C++中什么是指针 为什么要使用指针 指针怎么用
- 什么是指针做函数参数
- 什么是指针数组
- c语言指针的概念
- C语言里的指针是什么意思,起什么作用
指针是什么意思啊
意思是一个char指针。
在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。
由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。
扩展资料:
大家都认为,c语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上。因此,说指针是c语言的灵魂,一点都不为过。
同时,这种说法也让很多人产生误解,似乎只有C语言的指针才能算指针。basic不支持指针,在此不论。其实,pascal语言本身也是支持指针的。
从最初的pascal发展至今的object pascal,可以说在指针运用上,丝毫不会逊色于c语言的指针。
内存分配表
计算机中的内存都是编址的,就像你家的地址一样。在程序编译或者运行的时候,系统(可以不关心具体是什么,可能是编译器,也可能是操作系统)开辟了一张表。
每遇到一次声明语句(包括函数的传入参数的声明)都会开辟一个内存空间,并在表中增加一行纪录。
指针是什么
以c语言为例,其指针是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。指针也就是内存地址,指针变量是用来存放内存地址的变量,不同类型的指针变量所占用的存储单元长度是相同的,而存放数据的变量因数据的类型不同,所占用的存储空间长度也不同。有了指针以后,不仅可以对数据本身,也可以对存储数据的变量地址进行操作。 指针相对于一个内存单元来说,指的是单元的地址,该单元的内容里面存放的是数据。在C语言中,允许用指针变量来存放指针,因此,一个指针变量的值就是某个内存单元的地址或称为某内存单元的指针。 指针变量是存放一个变量地址的变量,不同于其他类型变量,它是专门用来存放内存地址的,也称为地址变量。定义指针变量的一般形式为:类型说明符星号变量名。类型说明符表示指针变量所指向变量的数据类型;星号表示这是一个指针变量;变量名表示定义的指针变量名,其值是一个地址。
指针是什么意思
表示成员选择(指针),选择结构体的成员变量。
1、结构:运算符 -》 是指向结构体成员运算符,结合方向为自左向右。
2、用法:对象指针-》成员名。
举例说明如下:
扩展资料:
C语言指针的必要性。
指针解决了一些编程中基本的问题:
1、指针的使用使得不同区域的代码可以轻易的共享内存数据。当然也可以通过数据的复制达到相同的效果,但是这样往往效率不太好,因为诸如结构体等大型数据,占用的字节数多,复制很消耗性能。
但使用指针就可以很好的避免这个问题,因为任何类型的指针占用的字节数都是一样的(根据平台不同,有4字节或者8字节或者其他可能)。
2、指针使得一些复杂的链接性的数据结构的构建成为可能,比如链表,链式二叉树等等。
3、有些操作必须使用指针。如操作申请的堆内存。还有:C语言中的一切函数调用中,值传递都是“按值传递”的,如果要在函数中修改被传递过来的对象,就必须通过这个对象的指针来完成。
百度百科--指针
C语言的指针,又什么用能用通俗的话讲讲什么是指针吗最好结合例子
程序运行的时候代码和数据放在内存中,现在把内存比作一个宾馆,宾馆有很多房间组成,代码和数据都存放在房间中,如果我们想找某个数据或代码,只要知道它所在的房间号码即可,这个号码就是所谓的指针。内存是有很多存储单元(每个存储单元长度为一个字节)构成,每个存储单元都有一个地址,代码和数据都存在这些存储单元中,如果要找到内存中的数据或代码,只要知道它所在的存储单元地址即可,为了能处理这些地址值,这才引进了指针这个数据类型,也就是说指针专门用来处理内存地址的。就像是为了能进行整数运算引进了int整型类型、为了处理字符引进了char字符类型一样,这样说能明白吗?
什么是指针变量
这么说吧,指针其实就是地址,指向特定的内存。而这个地址你要用变量保存起来,保存它的变量就是指针变量。如果举例的话,可以这么说。有几个房间,门牌号是1,2,3,那么1,2,3就分别指向这三个房间,就是地址,那么这几个门牌号我总得记下来吧,那么我就写在三个“本子”上吧,这三个“本子”都是指针变量。不知道朋友理解了嘛?
在C++中什么是指针 为什么要使用指针 指针怎么用
C++中指针是变量的地址因为C++中函数传递参数实际上只有一种形式----传值,因此如果将变量的地址传递给函数将使函数能方便的修改实参的值当然,这只是指针的很普通的用法另外,指针在构造数据结构,函数指针中都很有用指针最基本的操作有两个1.赋值 一般必须是同类型间的指针赋值,例如 int intvar; int * pInt = &intVar2.解引用 操作符是*,例如 *pInt = 10; // pInt解引用就是intVar
什么是指针做函数参数
voidtest(int*a);可以修改a的值,而voidtest(inta);无法修改a的值最好的例子是交换a和b的值:如voidswap(inta,intb)这样传参,无法实现交换;但voidswap(int*a,int*b)则可以实现交换目的。原因在于传指针相当于传地址,也就是在函数体内会生成一个地址的副本,但是地址值是一样的,则对同一个地址值进行操作,自然就能修改其值了。
什么是指针数组
同志们他说的是指针数组不是数组指针。 指针数组就是说是一个数组,数组中的每一个成员是一个指针。举例如下: char *a={"tan","li","cheng","fang","zheng"}; 定义指针数组a,存放姓名,a有5个成员,即a是包含5个指针元素的指针数组,5个指针中每个的值是该字符串的首地址,也就是说 a=字符’t’的地址 a=字符’l’的地址 a=字符’c’的地址 a=字符’f’的地址 a=字符’z’的地址 为何要这样?因为各个名字是字符串不是单个字符,也就是说它相当于二维数组 tan li cheng fang zheng 也就是相当于有行有列,所以要找到数组中的某一个字符就要先找到所在的行即a+j)就是第i+1行第j+1个元素。也就是说 char *a={"tan","li","cheng","fang","zheng"}; 等价于定义 char a={"tan","li","cheng","fang","zheng"}; 只是对于字符串,函数strncpy,strcpy,strcmp,strlen,strcat,strstr,strchr的参数都是指针变量都是一个指向字符串首字符的地址的指针,故用指针数组表示一个二维数组更方便形象,有些数据结构复杂,用指针数组来指向它们,当要改变数据的顺序时只要改变指向它们的指针的顺序不必改变数据本身,这样可以简化问题。指针是个好东西,是c语言的精华。你只要好好看《谭浩强的c程序设计》就会完全明白。
c语言指针的概念
指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; 能很方便地使用数组和字符串; 并能象汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了C语言的功能。 学习指针是学习C语言中最重要的一环, 能否正确理解和使用指针是我们是否掌握C语言的一个标志。同时, 指针也是C语言中最为困难的一部分,在学习中除了要正确理解基本概念,还必须要多编程,上机调试。只要作到这些,指针也是不难掌握的。 指针的基本概念 在计算机中,所有的数据都是存放在存储器中的。 一般把存储器中的一个字节称为一个内存单元, 不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等, 在第二章中已有详细的介绍。为了正确地访问这些内存单元, 必须为每个内存单元编上号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做地址。 既然根据内存单元的编号或地址就可以找到所需的内存单元,所以通常也把这个地址称为指针。 内存单元的指针和内存单元的内容是两个不同的概念。 可以用一个通俗的例子来说明它们之间的关系。我们到银行去存取款时, 银行工作人员将根据我们的帐号去找我们的存款单, 找到之后在存单上写入存款、取款的金额。在这里,帐号就是存单的指针, 存款数是存单的内容。对于一个内存单元来说,单元的地址即为指针, 其中存放的数据才是该单元的内容。在C语言中, 允许用一个变量来存放指针,这种变量称为指针变量。因此, 一个指针变量的值就是某个内存单元的地址或称为某内存单元的指针。图中,设有字符变量C,其内容为“K”(ASCII码为十进制数 75),C占用了011A号单元(地址用十六进数表示)。设有指针变量P,内容为011A, 这种情况我们称为P指向变量C,或说P是指向变量C的指针。 严格地说,一个指针是一个地址, 是一个常量。而一个指针变量却可以被赋予不同的指针值,是变。 但在常把指针变量简称为指针。为了避免混淆,我们中约定:“指针”是指地址, 是常量,“指针变量”是指取值为地址的变量。 定义指针的目的是为了通过指针去访问内存单元。 既然指针变量的值是一个地址, 那么这个地址不仅可以是变量的地址, 也可以是其它数据结构的地址。在一个指针变量中存放一个数组或一个函数的首地址有何意义呢? 因为数组或函数都是连续存放的。通过访问指针变量取得了数组或函数的首地址, 也就找到了该数组或函数。这样一来, 凡是出现数组,函数的地方都可以用一个指针变量来表示, 只要该指针变量中赋予数组或函数的首地址即可。这样做, 将会使程序的概念十分清楚,程序本身也精练,高效。在C语言中, 一种数据类型或数据结构往往都占有一组连续的内存单元。 用“地址”这个概念并不能很好地描述一种数据类型或数据结构, 而“指针”虽然实际上也是一个地址,但它却是一个数据结构的首地址, 它是“指向”一个数据结构的,因而概念更为清楚,表示更为明确。 这也是引入“指针”概念的一个重要原因。
C语言里的指针是什么意思,起什么作用
1:指针是一个地址,指向的是个类型:我们知道,c语言中的类型有int,char,bool(这个不常用),一般我们使用int,char就可以满足一般的类型需求的,如果对于变量的长度过大,就是用long ,float,double,关于各个类型使用的的长度问题,可以使用sizeof(int)或者sizeof(long)来查看各个类型,在系统中的小。而指针就是一个8个字节(64系统)。2:指针指向的是地址,地址指向的是内容:我们需要一个变量,来存储地址,这个变量的值是地址,但是我们可以通过修改变量的值,来不断的改变地址,但是,我们如果需要改变该个地址的值的话,就需要,对地址的值进行修改,而不改变地址。int a = 10;int *p ;p = &a;*p =11;a=?这里我们看到,p 是一个变量,我们使用p来存储变量a的地址,这是,我们使用*p对于这个变量进行赋值,那么a的值最后,是多少呢,结果是11,因为我们使用*p赋值,就相当于a=11,赋值效果一样的。3:指针的指针,是面对于指针的变量:我们说,指针的指针的时候,就有点不清楚了,到底怎么区分指针和指针的指针呢。char *p;char **pr;pr = &p;我们这样看就清楚了一点,char *(*pr); *pr是一个存储的值为指针的变量,pr就是存储上个变量地址的变量。整合起来就是,pr是一个存储的值为指针的地址的变量。这样,我们就基本,对于指针有一个直接的了解了。
更多文章:
java遍历map的key(java Map 根据Map的值(value)取键(key))
2024年7月1日 21:45
html中的高和宽代码是(html代码 <div 宽=300 高=50 上下居中显示<img图片)
2024年7月3日 10:25
什么是编曲?词作、曲作和演唱者的英文缩写和原词分别是什么是什么
2024年3月7日 23:35
笛卡尔坐标系的故事(《隐秘的角落》结尾中“你可以相信童话”是什么意思)
2024年7月10日 01:27
vuedisabled属性(vue动态菜单设置disable=true非常慢)
2024年7月24日 04:48
spider软件(有没有能采集软件系统里面数据的工具便宜点或者不要钱的那种)
2024年6月28日 03:41
extend有被动吗(extendover5000kilometers为什么不用被动)
2024年8月5日 22:45
cactus什么意思中文(植物类的英文单词! 要有中文翻译!)
2024年7月19日 04:49