本文主要是介绍C语言数组名涵义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 数组名涵义
-
在C语言程序中,数组的出现有两种可能的含义:
- 代表整个数组
- 代表其首元素的地址
-
当出现以下情形时,数组代表的是整个数组:
- 在数组定义中
- 在 sizeof 运算表达式中
- 在取址符&中
-
当出现其他情形时,数组代表其首元素地址。
-
示例:
int a[3]; // 此处,a 代表整个数组
printf("%d\n", sizeof(a)); // 此处,a 代表整个数组
printf("%p\n", &a); // 此处,a 代表整个数组,此处为整个数组的地址int *p = a; // 此处,a 代表首元素 a[0] 的地址,等价于 &a[0]
p = a + 1; // 此处,a 代表首元素 a[0] 的地址,等价于 &a[0]
function(a); // 此处,a 代表首元素 a[0] 的地址,等价于 &a[0]
scanf("%d\n", a); // 此处,a 代表首元素 a[0] 的地址,等价于 &a[0]
C语言中的数组,在不同场合下有不同的含义,大部分场合都表现为首元素的地址,此时实际上就是一个指向其首元素的指针。数组运算实际上就是指针运算。
这篇关于C语言数组名涵义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!