数组名与数组名的地址

转载 2015年11月21日 00:55:52

 假设我们定义一个数组char a[16]; 那么a与&a分别代表什么呢?它们完全一样吗?

      a其实代表的是数组中首元素的地址,即a[0]的地址&a代表的是整个数组的起始地址。我们做个测试就可以很容易知道。

      我们分别测试a  a+1  &a   &a+1这四个值,它们分别为:

a 0x0012fcc8
a+1 0x0012fcc9
&a 0x0012fcc8
&a+1 0x0012fcd8

      a和&a的值虽然完全一样,但是他们的含义是不同的。


如果有char a[10];,则a是这10个字符的第一个字符的地址,&a是这10个字符组成的字符串的首地址,但二者的“值”一样的,因为10个人站在那里,第一个人的地方也是这一排人排头的地方。区别在于:a+1是第二个元素的地址,而&a+1是第二排的首地址,跑到a[9]后面的那个元素的地址上了

char stra[10]="hello";

test6(stra);

等价于

test6(&stra);

也就是说当数组名被当做参数传递时,数组名等价于&数组名

C语言——数组名、取数组首地址的区别(一)

目录: 1. 开篇 2. 论数组名array、&array的区别 3. array、&array的区别表现在什么地方 4. 讨论 5. 参考 1.开篇 很多博客和贴吧都有讨论这...
  • jingzi123456789
  • jingzi123456789
  • 2017年03月26日 20:57
  • 1694

C语言的数组名和对数组名取地址

int a[5] = {1,2,3,4,5};     int *p = (int *)(&a+1);     int *s = p-1;     int *r = a+4;     prin...
  • syzobelix
  • syzobelix
  • 2014年10月13日 22:11
  • 4592

数组名与数组名前加取地址符

代码: int main() { int a[10]={1,2,3,4,5,6,7,8,9,10}; cout cout return 0; } 结果: 我们知道数组名与数组名取地址所得...
  • alw_123
  • alw_123
  • 2016年01月12日 15:03
  • 1696

验证C语言的数组名非数组首地址的代码

  • 2015年03月29日 22:30
  • 2KB
  • 下载

地址型数据,数组名与指针

最近两天复习编程,对数组名与指针这个问题进行了一些研究。大部分内容是我自己总结出来的,写出来供参考,有不同意见可以探讨。   计算机内存由一个个物理存储单元构成,这些存储单元是有序的,按照...
  • laogaoAV
  • laogaoAV
  • 2013年02月28日 23:02
  • 494

关于数组名的值,地址,表示以及强转等,有些绕的问题

上图: 如上图,能看出:数组名arr的地址、数组名arr的值、数组首元素的地址,他们的值都一样。 然后再根据其他值能看出:给数组名的地址(指针)加1,结果是加了20,也就是加了整个数组的字节长度。这...
  • lulu_1085
  • lulu_1085
  • 2017年12月01日 13:10
  • 43

C语言数组名取地址

面试中遇到的C语言数组名取地址的问题
  • xiaolewennofollow
  • xiaolewennofollow
  • 2016年10月02日 16:17
  • 415

二维数组名再取地址是什么

ww6582163 | 分类:互联网 | 浏览246次 分享到: 举报| 2013-11-26 18:21提问者采纳 此处...
  • Sayesan
  • Sayesan
  • 2014年09月02日 09:22
  • 1442

指针、数组名、地址的区别

数组是指针的基础,多数人就是从数组的学习开始指针的旅程的。下面我节选一些在各种论坛和文章里经常见到的关于数组的文字: “一维数组是一级指针” “二维数组是二级指针” “数组名可以作为指针使用” ...
  • haiou0
  • haiou0
  • 2012年09月19日 17:22
  • 864

数组名取地址带来的问题

我们都知道数组名取地址的值和数组的首地址是同一个值,但是他们的指类是不同的,如果强转的话是会出问题的。看看下面这个程序片段: #include int foo(char **t) { printf...
  • choumin
  • choumin
  • 2016年05月08日 18:56
  • 192
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数组名与数组名的地址
举报原因:
原因补充:

(最多只允许输入30个字)