首页 > 节日习俗

彻底搞定c语言指针详解 C语言指针和数组结合起来该怎么学?

c语言指针和数组结合起来该怎么学?

我用c语言开发十几年了,经常看到一些新手对指针和数组很迷茫。

排列

首先是array,一个数组声明后就有内存了,比如chara[10],那么数组a就有10个字节的内存。

彻底搞定c语言指针详解 C语言指针和数组结合起来该怎么学?

所以可以带下标使用,只要下标不超过10-1,就不会出错。

如果你把数组想象成一串粘在一起的盒子,指针就是一个钩子。钩子被钩住的时候只能用一块内存。比如声明一个指针p:char*p,这时可以不要用它。只有在p挂接一块内存后,也就是赋值后,才能使用。比如pa或者pampa[0]。

注意

指针本身也有内存,比如intb,其中b取4个字节,那么char*p,p的类型是char*,所以p本身也取4个字节。也可以取它的地址,也就是二级指针:char**ppp。

数组本身也可以看作是指向一块内存的指针,指针就是数组名。比如上面的一个。您可以将a分配给p:pa。更常见的情况是,当调用函数时。比如有一个排序函数:qsort(char*p,intn),需要一个数组和数组中的元素个数作为参数。可以这样调用:qsort(a,10)。

欢迎讨论关注我的头条号。

c语言函数和指针哪个难?

c语言的指针比较难,因为指针操作内存,容易出现段错误。

指针内存字节char*p

原文标题:彻底搞定c语言指针详解 C语言指针和数组结合起来该怎么学?,如若转载,请注明出处:https://www.wmyjt.com/wmy4/36517.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「共道号」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。