数组名可作为指针常量
来源:互联网 发布:网络诈骗立案金额标准 编辑:程序博客网 时间:2024/05/22 11:41
三个结论:
(1)数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组;
(2)数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量;
(3)指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址!
- #include <iostream.h>
- int main(int argc, char* argv[])
- {
- char str[10];
- char *pStr = str;
- cout << sizeof(str) << endl; //输出是10
- cout << sizeof(pStr) << endl; //输出是4
- return 0;
- }
数据名可能失去其数据结构内涵:
(1)数组名作为函数形参时,在函数体内,其失去了本身的内涵,仅仅只是一个指针;
(2)同时,还失去其常量特性,可以作自增、自减等操作,可以被修改。
- #include <iostream.h>
- void arrayTest(char str[])
- {
- cout << sizeof(str) << endl; //输出结果为4
- }
- int main(int argc, char* argv[])
- {
- char str1[10] = "I Love U";
- arrayTest(str1);
- return 0;
- }
注:程序的输出结果为4
所以,数据名作为函数形参时,其全面沦落为一个普通指针!它的贵族身份被剥夺,成了一个地地道道的只拥有4个字节的平民。
0 0
- 数组名可作为指针常量
- 数组名是指针常量
- C中的概念 指针常量 常量指针 数组名
- 数组名是一个指针常量吗?
- 数组名是一个指针常量吗?
- 数组名表示指针常量的问题
- c++数组名是一个指针常量
- 数组名和指针作为形参?
- 指针变量为什么可以作为“数组名”?
- 第二章数组名是一个指针常量吗?
- 第二章 数组名是一个指针常量吗?
- 第二章 数组名是一个指针常量吗?
- C++中,数组名不是一个简单地指针常量
- 第二章数组名是一个指针常量吗?
- 数组与指针的艺术 第二章 数组名是一个指针常量吗?
- 【C语言提高16】数组中括号与指针关系和数组名常量指针分析
- 数组中括号与指针关系、数组名常量指针分析
- 指针赋值为常量字符串可返回,数组赋值为常量字符串不可返回的原理
- Android 简单实现ListView顶部悬浮效果
- linux /etc/security/limits.conf的相关说明
- Android Service Bind with Activity
- iOS OC08,09_内存管理
- SSH学习一 STRUTS2 DTO
- 数组名可作为指针常量
- Matlab--字符串
- OC -内存管理
- iOS UI篇 学习笔记 UILabel
- XHTML基础
- 《深入浅出struts2》--第八章,输入验证-内建验证程序required,requiredstring和stringlength
- 重学java23种设计模式(6)适配器模式
- C++ 模板类
- 终于开通了