1楼:匿名用户
指针是c语言中广泛bai使用的一种数据du类型。
zhi 运用指针编程是c语言最dao主要的专
风格之一。利用指针变属量可以表示各种数据结构; 能很方便地使用数组和字符串; 并能象汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了c语言的功能。
2楼:匿名用户
每个变量都有
地址,无论是基本变量、函数还是类对象,而这个地址一般是不可知
内的,指针就提供了这样容一个机制,让你可以知道变量存储的地方,指针本身也是一个变量,它也有值,这个值就是某个变量的地址,它也有地址,如果你想知道这个地址的话可以把这个地址保存在另外一个指针里面,这就是二级指针,你愿意的话可以弄个**指针、四级指针·····无穷下去,不过没多大意义
3楼:匿名用户
指示子程序所处内存的位子
c语言的指针有什么优缺点?
4楼:爱夏的你呀
1、指针的优点
是标识一块内存。电脑内存上的每一个字节都具有一个编号,称为地址(可以简单理解为指针),任何读写内存的指令都必须携带地址信息,否则电脑不知道读写那块内存。
不管程序是用什么语言写的,要运行数据和**必须驻留内存,cpu要执行指令必须有一个“指针”程序计数器指向内存的**块,如果某个指令要操作内存数据,该指令必须携带额外的地址信息。
2、指针的缺点
指针可以操作任何东西,所以指针很灵活、很强大,但也引入了复杂性。
扩展资料
1、指针利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。
2、输出一串字符时,只需要知道它的第一个字符的地址,就可以将这个字符串输出,而第一个字符的地址,可以用指针储存。所以有n个字符串时,就可以用n个指针来储存。
3、为了保存一个数据在内存中的地址,就需要指针变量。因此指针是程序数据在内存中的地址,而指针变量是用来保存这些地址的变量。
5楼:文化厨子
指针是c语言只所以如此成功的重要原因之一,当然任何事物,往往都是一体两面的,本质上是一体,看上去是两面,关键是要活学活用,没比较过分的区别优点、缺点。
c语言主要是针对硬件及系统底层编程的,在针对硬件及系统底层编程中,对数据的灵活性要求较高,换句话说数据的意义需要经常变动,而数据类型决定了数据的意义,指针一个重要作用是实现对数据类型的转换,比如要将机器码为0x3f8ccccd表示成浮点数:
#include
int main()
指针这种能改变数据上下文环境的能力是非常有用的, 比如检测cpu所支持的存储顺序。
#include
char endian(void)
int main()
如果c语言没有指针,当然可以想出其它的方法,但是远没有指针方便。
指针的缺点,可能对于初学者来说 ,往往不容易理解,而且使用指针编程经常会出现一些莫名其妙的错误,而且在平时使用c语言进行应用程序开发时,好像指针真的不怎么有用,这些都不是问题,关键是看个人学习c语言的用处,做什么开发,上什么项目。
6楼:51cto学院
内存对齐的缘故。
p_buf 作为一个指针,它的值是内存的某个字节的地址。
如果想要把 p_buf 强制转换成一个 unsigned int*类型的指针,
需要满足一个必要条件,就是 p_buf 的值必须能够被4整除。(之所以是4,是因为 unsigned int 是要占4个字节的)。
7楼:匿名用户
说那么多干什么勒..
指针我觉得是画蛇添足..没有什么好与不好.
可的情况还是需要用指针,不过觉得不多.
C语言中的“行指针”与“元素指针”有什么区别
1楼 键盘雀跃 int a 4 1 2 3 4 a 0 a 1 a 2 a 3 a是一维数组名,代表数组的首地址 也就是a 0 a 1 指针移动2个字节,指向下一个数组元素,就是a 1 int a 3 4 a 4 或a 4 或a 3 4 都可以表示行指针 操作a是二维数组名,代表二维数组的首地址,也...
c语言中的指针问题,求解答,C语言中的指针问题,求解答
1楼 匿名用户 好像有点多此一举,直接使用rsnum就可以了。rsnum 就是数组的首地址了。 如果一定要用指针就是要申明一个指针来赋值。 c语言指针问题,求解答 2楼 伤我中国心 1, 是取值运算符,因为你要判断tt的值的情况,所以要用 2,tt 相当于 tt tt 1 这个是指针向后移动,不需要...
c语言指针和运算符优先级的问题,C语言指针和运算符优先级的问题
1楼 lost 觉悟 和 的优先级是1,而 的优先级是2,优先级小的先处理,所以不加括号的 p 4 就等价于 p 4 ,所以先看p 4 这一部分,就类似a 4 表明这是一个数组,那么 p 4 就类似 p ,表明是一个指针,由于先是数组,那么 p 4 就是一个以指针为元素的数组,同理 p 4 先是指针...