Skip to content
On this page

clang_数组


标签:clang/basic  

概念

C 语言中的数组是连续的相同数据类型的变量的集合 . 在内存地址上是连续的空间 . 这点和 JavaScript 这种脚本语言不太一样 , 不过想要实现复合类型的数组采用 C语言结构体 数组的方式即可 .

数组变量和指针的区别

c
int a[5];
int *b;
  • 数组变量在声明的时候必须指定长度,如果直接初始化,可以通过初始化数据长度省略数字;指针不包含长度,它的大小由系统架构固定,64位下是8字节;
  • 数组变量表示整个数组,它的值是首元素的地址;指针可以指向任意一个数据,它的值是存储的地址;(简单来说,数组变量不能指向内部某元素,而指针可以);
  • 数组变量不支持算数运算,如果运算会有隐式转换;
  • 数组传入函数的时候,会有到指针的隐式转换,导致长度丢失。面试题

Last updated: