C语言中指针与数组的关系是怎样的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计733个文字,预计阅读时间需要3分钟。
1. 数组名不是指针,类似指针(可以将数组名直接赋值给指针)。 (1)数组名的内涵在于其指向的实际实体是一种数据结构,这种数据结构就是数组; (2)数组名的扩展在于其可以转换为指向其的指针。
1.数组名不是指针,神似指针(可以将数组名直接赋值给指针)
(1)数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组;
(2)数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量;
(3)指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址!
2.数组名只能被看作一个指针常量,不能被修改
int intArray[10]; intArray++;//错误
3.作为函数形参
(1)数组名作为函数形参时,在函数体内,其失去了本身的内涵,仅仅只是一个指针;
(2)很遗憾,在失去其内涵的同时,它还失去了其常量特性,可以作自增、自减等操作,可以被修改。
本文共计733个文字,预计阅读时间需要3分钟。
1. 数组名不是指针,类似指针(可以将数组名直接赋值给指针)。 (1)数组名的内涵在于其指向的实际实体是一种数据结构,这种数据结构就是数组; (2)数组名的扩展在于其可以转换为指向其的指针。
1.数组名不是指针,神似指针(可以将数组名直接赋值给指针)
(1)数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组;
(2)数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量;
(3)指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址!
2.数组名只能被看作一个指针常量,不能被修改
int intArray[10]; intArray++;//错误
3.作为函数形参
(1)数组名作为函数形参时,在函数体内,其失去了本身的内涵,仅仅只是一个指针;
(2)很遗憾,在失去其内涵的同时,它还失去了其常量特性,可以作自增、自减等操作,可以被修改。

