C/C++数组和指针及引用的区别-创新互联
C/C++ 数组和指针及引用的区别
创新互联建站是一家集网站建设,城厢企业网站建设,城厢品牌网站建设,网站定制,城厢网站建设报价,网络营销,网络优化,城厢网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。1.数组和指针的区别
(1)定义
数组是一个符号,不是变量,因而没有自己对应的存储空间。但是,指针是一个变量,里面存储的内容是另外一个变量的地址,因为是变量所以指针有自己的内存空间,只不过里面存储的内容比较特殊。
(2)区别
a.对于声明和定义,指针和数组是不相同的,定义为数组,则声明也应该是数组,不可混淆
b.当作下标操作符时,指针和数组是等价的。a[i]会被编译器翻译成*(a+i).
c.当数组声明被用作函数形参的时候,数组实际会被当作指针来使用。
(3)从汇编角度分析
**int i = 10;** 00C44CC8 mov dword ptr [i],0Ah **int * p = &i;** (1) 00C44CCF lea eax,[i] 00C44CD2 mov dword ptr [p],eax **int arr[5] = {0};**(2) 00C44CD5 mov dword ptr [arr],0 00C44CDC xor eax,eax 00C44CDE mov dword ptr [ebp-30h],eax 00C44CE1 mov dword ptr [ebp-2Ch],eax 00C44CE4 mov dword ptr [ebp-28h],eax 00C44CE7 mov dword ptr [ebp-24h],eax
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前名称:C/C++数组和指针及引用的区别-创新互联
本文URL:http://cdiso.cn/article/dcjiph.html