C语言中a【10】什么意思?

Python0437

C语言中a【10】什么意思?,第1张

如果在类型后面的话,就是定义数组a大小维度10的意思。比如 int a[10] 就是定义整型数组a,大小10个整型数据大小(1个int占 4字节的话,就是占40个字节大小的内存)。

如果是在表达式中,比如 a[10]=1 这里a[10]就表示a数组第11个元素(数组下标是从0开始的,10就是第11个元素)。 a[10]=1就是给该元素赋值1,同理如果在等号右边就是取a[10]的值。

另外 &a[10] 表示a[10]元素的地址。 a表示a数组首地址常量,相当于&a[0]。

[10]表示字符数组a的维度大小。

表示a数组在内存中占用10个(char)大小空间。

另外作为字符数组,定义[10],实际只使用9个空间存储字符,最后一个留着存放字符串结束符号‘\0’。

扩展资料:

数组:

在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。

关于可变长数组(VLA)的问题:原来的C89标准中是不允许可变长数组出现的,但是在C99标准中,加入了对VLA的支持,但是支持的编译器不多,而且由于栈溢出的安全问题,没有太多的人敢用这个可变长数组,所以在C11标准中又把它规定为可选实现的功能了 。

如果有过用其它语言编程的经历,那么想必会熟悉数组的概念。由于有了数组,可以用相同名字引用一系列变量,并用数字(索引)来识别它们。

在许多场合,使用数组可以缩短和简化程序,因为可以利用索引值设计一个循环,高效处理多种情况。数组有上界和下界,数组的元素在上下界内是连续的。因为 Visual Basic对每一个索引值都分配空间,所以不要不切实际声明一个太大的数组。

此处数组是程序中声明的变量数组。它们不同于控件数组,控件数组是在设计时通过设置控件的 Index 属性规定的。变量数组总是连续的;与控件数组不同的是,不能从一个数组的中部加载或卸载数组元素。

一个数组中的所有元素具有相同的数据类型(在C、C++、Java、pascal中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。

当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、字符串、数值等等)。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量。

参考资料来源:百度百科-数组