彻底搞定c语言指针详解 C语言指针和数组结合起来该怎么学?
浏览量:2903
时间:2023-03-24 12:14:08
作者:采采
C语言指针和数组结合起来该怎么学?
我用C语言开发十几年了,经常看到一些新手对指针和数组很迷茫。
排列
首先是array,一个数组声明后就有内存了,比如char a[10],那么数组A就有10个字节的内存。
所以可以带下标使用,只要下标不超过10-1,就不会出错。
针
如果你把数组想象成一串粘在一起的盒子,指针就是一个钩子。钩子被钩住的时候只能用一块内存。比如声明一个指针p: char * p,这时可以 不要用它。只有在P挂接一块内存后,也就是赋值后,才能使用。比如p a或者p ampa[0]。
注意
指针本身也有内存,比如int b,其中b取4个字节,那么char *p,p的类型是char *,所以p本身也取4个字节。也可以取它的地址,也就是二级指针:char **pp p。
数组本身也可以看作是指向一块内存的指针,指针就是数组名。比如上面的一个。您可以将a分配给p: p a。更常见的情况是,当调用函数时。比如有一个排序函数:qsort(char *p,int n),需要一个数组和数组中的元素个数作为参数。可以这样调用:qsort(a,10)。
欢迎讨论关注我的头条号。
c语言函数和指针哪个难?
C语言的指针比较难,因为指针操作内存,容易出现段错误。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。