c语言数组名解释
2017-01-20 11:58
190 查看
对于c语言中数组名的操作我们应该是很陌生的吧,因为几乎不会使用数组名来对数组进行操作,因为凡是可以使用数组名操作的我们都可以使用&和*两种操作符更简单形象的进行一些操作。但是我们还是需要了解一下,关于数组名的基本语法,不需要去使用,但是要看懂哈。
一维数组;
数组名首先是一个标识符,是这个数组的名字,同时又是一个指针,指向的是这个数组首地址。
既然是指向首地址的指针,因此就有了第二种表示数组元素的方法,使用数组名;
a;代表指向数组首地址的指针。则就是指向a[0]的地址,则与&a[0]等效;
a+i;则表示指向数组的第i+1个元素。则与&a[i]等效;
*;是取值符。与&恰好相反;
a就相当于&a[0],而*(a+i)就表示a[i];
//记得*(a+i)要打括号,优先级问题,如果没打则表示的是a【0】+i的值;
看程序;
![](https://img-blog.csdn.net/20170120093942281?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvencxOTk2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
这就是一维数组中的数组名。
再看一个数组名的一个小程序;
![](https://img-blog.csdn.net/20170120114557245?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvencxOTk2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
分析二维数组的数组名;从上面那个小程序可以看出数组名存在嵌套关系的;根据这个来详细分析二维数组数组名。
![](https://img-blog.csdn.net/20170120115623613?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvencxOTk2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
就是根据一维数组名一层一层的分分析就得到其余多维数组名的解释,
二维是由一维嵌套。
三维就是由二维嵌套。
一维数组;
数组名首先是一个标识符,是这个数组的名字,同时又是一个指针,指向的是这个数组首地址。
既然是指向首地址的指针,因此就有了第二种表示数组元素的方法,使用数组名;
a;代表指向数组首地址的指针。则就是指向a[0]的地址,则与&a[0]等效;
a+i;则表示指向数组的第i+1个元素。则与&a[i]等效;
*;是取值符。与&恰好相反;
a就相当于&a[0],而*(a+i)就表示a[i];
//记得*(a+i)要打括号,优先级问题,如果没打则表示的是a【0】+i的值;
看程序;
这就是一维数组中的数组名。
再看一个数组名的一个小程序;
分析二维数组的数组名;从上面那个小程序可以看出数组名存在嵌套关系的;根据这个来详细分析二维数组数组名。
就是根据一维数组名一层一层的分分析就得到其余多维数组名的解释,
二维是由一维嵌套。
三维就是由二维嵌套。
相关文章推荐
- C语言实现数组快速排序(含对算法的详细解释)
- C语言实现数组快速排序(含对算法的详细解释)
- C语言实现数组快速排序(含对算法的详细解释)
- C语言中const型变量不可用做数组个数标示符
- 水滴石穿C语言之指针、数组和函数(转载)
- c语言学习零碎整理(7):数组名是指针吗?(补)
- C语言教程---第四章: 数组
- C语言多维数组指针的技巧
- C语言之指针、数组和函数
- C语言的调试-数组(21)
- C语言中如何求任意一个int型数组的长度
- 水滴石穿C语言之指针、数组和函数
- C语言的数组
- C语言中文件操作--如何将文本数据正确读到字符串数组中
- C语言的数组-二维(22)
- C语言中字符数组和字符串指针分析
- 再谈C语言中数组和指针之间的互操作
- C语言之指针、数组和函数
- c语言之函数参数传递之数组篇
- 再谈C语言中数组和指针之间的互操作