C语言中 指针 数组 结构体 队列 堆栈 变量 区别

如题所述

指针就是指地址;数组的地址在定义变量时就已经给定了,不能再变化,其大小也是定了的,数组可以通过下表访问,这是数组的方便之处,但是,数组可能存在越界访问和浪费空间的问题;结构体就是将以个项目的所有的属性放在一起,这样方便操作;队列有先进先出的原则;堆栈是存储空间的概念,C语言中的局部变量就是保存在栈空间里的,而用malloc分配的空间是在堆里开辟的;变量的概念就太广了,可以有多种类型的变量。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-09
指针就是地址,只是指针变量存的数据类型是地址类型的值。数组与指针没有任何的关系,只是数组可以通过指针来访问,另外c语言中数组是在编译时就分配内存的,故我们在定义数组时必须指定数组大小,不然编译通不过,还有就是特殊数组——柔性数组可以不指定而且不能指定其大小,至于你有没有听过柔性数组或是柔性数组是什么,去网上搜索一下,这里不在因为这个啰嗦。结构体就是把一些数据类型打包成一个整体,没有其他什么特别的。队列是数据结构中的一种数据结构,学过数据结构很容易就理解了,若没有学过数据结构,我再怎么解释你应该也理解不过来,这个问题就相当于你问c语言中什么是c语言。堆、栈和队列一样属于不同的数据结构,这与内存中设计到的堆栈不一样,内存中的堆栈不知道的话去网上搜搜吧,讲起来复杂,而起网上这一块讲的很多。变量就是可以保存某种数据的东西啊,就想当与人的名字是什么作用一样,人的名字代表一个人,至于这个人是大人是大人还是小孩、男人还是女人、白人还是黑人就得看具体这个谁用这个名字。我只能讲这些了,你若还不理解,那LZ可能得再去看看c语言课本书噶。因为你问的这个问题很业余而且让人有点不知怎么回答,“小呆哈”反问你的那两个问题不是空穴来风的。
第2个回答  2012-04-08
你能告诉我他们之间有什么相同的么?都属于C语言是么?
相似回答