1. c语言中如何计算一个数组占内存多少空间
首地址由数组名表示,也是0元素的地址。
若有: int a[10];
则:a与&a[0]都表示a数组所占存储空间的起始地址
2. C语言 一串数组占用的空间比单独定义这么多变量小吗
应该会,数组是内存地址加长度,三个变量是3个地址信息。C#开发的程序不要在乎这点东西,代码可读是第一的。
3. C语言中,数组在内存中占一片连续的存储区,由什么来代替它的首地址
C语言中规定,数组名就代表了该数组的首地址。
整个数组是以首地址开头的一块连续的内存单元。如有字符数组char c[10]。设数组c的首地址为2000,也就是说c[0]单元地址为2000。则数组名c就代表这个首地址。
因此在c前面不能再加地址运算符&。如写作scanf("%s",&c);则是错误的。在执行函数printf("%s",c) 时,按数组名c找到首地址,然后逐个输出数组中各个字符直到遇到字符串终止标志'