雅乐网

计算机技术、学习成长

编程 » C/C++ » c语言的数组名和指针

c语言的数组名和指针

c语言中的数组名和指针有许多类似的地方,甚至大部分时候可以用数组名当做指针用。但是,他们是有区别的。

1.数组名的内涵

数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组。

可以看到输出

搜狗截图20140417125617

 

为什么a的大小是7呢,因为这里a代表了一个数据结构,也就是这个数组。它由7个char类型的数据组成,因此大小为7.

搜狗截图20140417125940

 

2.数组名的外延

数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量,不能被修改。他表示的是数组存储的首地址。

3.指向数组的指针

指向数组的指针是另外一种变量类型,仅仅意味着数组的存放地址。

4.数组做函数的形参

若声明一个函数

在编译器执行的时候,他被解释为void test(char *)

因此,如果传入数组名,到了函数里,他就是一个普通的指针。

 

如果文章对你有帮助,欢迎点赞或打赏(金额不限)。你的打赏将全部用于支付网站服务器费用和提高网站文章质量,谢谢支持。

版权声明:

本文由 原创,商业转载请联系作者获得授权。
非商业转载请注明作者 雅乐网 ,并附带本文链接:
http://www.yalewoo.com/c_array.html

上一篇:

下一篇:

我要评论

验证码*: 4 + 6 =