当前位置:网站首页>C语言03、数组
C语言03、数组
2022-08-03 16:07:00 【列宁格勒的街头】
数组
数组有多种,有一维数组、二维数组、三维数组......
注意:数组是通过下标来访问的,下标是从0开始的
数组的大小可以通过计算得到(sizeof)
一维数组
一维数组的创建和初始化
#define M 25
int arr1[10];//对
int arr2[];//错
int arr3[] = {0 ,1 ,2 ,3};//对
此时会自动计算数组大小,此时数组大小为4
int arr4[M];//对
int arr5[1] = { 0 ,1 ,2 ,3 };//错,越界
int arr6[10] = { 0 };//对
此时该数组全部被初始化为0数组的创建,在C99标准之前,[]中要给一个常量才可以,不能使用变量,C99标准支持了变长数组的概念,也就是说C99标准后可以这样
int num = 10;
int arr[num] = { 0 };数组初始化时,要注意char类型的数组初始化
char arr1[] = "abc";
char arr2[3] = {'a', 'b', 'c' };如上代码,若此时以字符串打印arr2,会打印出乱码,因为字符串的结束标志是'\0',而arr2中三个元素均被初始化,该数组没有'\0',打印arr2时没有扫描到'\0',所以会打印出乱码
一维数组在内存中的存储
随着数组下标的增长,数组在内存中是连续存放的,并且是由低地址到高地址
二维数组
二维数组的创建和初始化
int arr1[3][4];//对
int arr2[3][4] = { {1,2,3,4} , {1,2}};//对
int arr3[][4] = { 0 };//对
int arr4[3][] = { 0 };//错二维数组的第一个[]里代表的是行,第二个[]代表的是列,在初始化二维数组时,第一个[]里的数字可以省略,第二个不可以省略。
二维数组在内存中的存储
与一维数组一样,只是它是一行一行存储的
数组越界
要注意数组越界的问题,有些越界编译器是不会报错的
数组作为函数参数
数组作为函数传参时,并不是把整个数组传了过去,而是只传过去了数组的首元素地址
数组名是什么(重要)
一般来说,数组名代表的是首元素地址
有两种特殊情况代表的是整个数组:
1.sizeof(数组名),此时计算出来的是整个数组的大小。
2.&数组名,取出的是整个数组的地址。若用&arr+1,会发现同一标号元素的地址之间差了整个数组的大小
边栏推荐
猜你喜欢

Difference and performance comparison between HAL and LL library of STM32

ModelWhale 云端运行 WRF 中尺度数值气象模式,随时随地即开即用的一体化工作流

蒋松廷 荣获第六季完美童模全球总决赛 全球总冠军

面了个腾讯35k出来的,他让我见识到什么叫精通MySQL调优

#夏日挑战赛# HarmonyOS 实现一个绘画板

【Unity入门计划】基本概念(8)-瓦片地图 TileMap 01
![[QT] Qt project demo: data is displayed on the ui interface, double-click the mouse to display specific information in a pop-up window](/img/3f/265c9d2703056260e03c346fa65a03.png)
[QT] Qt project demo: data is displayed on the ui interface, double-click the mouse to display specific information in a pop-up window

生态剧变,电子签名SaaS模式迎来新突破,网络效应加速到来

Yii2安装遇到Loading composer repositories with package information

To participate in sweepstakes, incoming new programmers magazine welfare!
随机推荐
黄致绮 荣获第六季完美童模全球总决赛 全国总冠军
高可用版 主数据库数据结构改变 备数据库会自动改变吗
Not to be ignored!Features and advantages of outdoor LED display
带你了解什么是 Web3.0
spark入门学习-1
How much do you know about the intelligent operation and maintenance service of data warehouse based on DMS?
托尔斯泰:生活中只有两种不幸
我写了个”不贪吃蛇“小游戏
13、OOM模拟
Common distributed theories (CAP, BASE) and consensus protocols (Gosssip, Raft)
[Unity Getting Started Plan] Basic Concepts (8) - Tile Map TileMap 01
Cookie和Session的关系
全新探险者以40万的产品击穿豪华SUV价格壁垒
基于DMS的数仓智能运维服务,知多少?
【QT】Qt项目demo:数据在ui界面上显示,鼠标双击可弹窗显示具体信息
泰山OFFICE技术讲座:文字边框高度研究
13 and OOM simulation
WordPress建站技术笔记
DataGrip数据仓库工具
EA 改口,称单人游戏是产品组合中“非常重要的一部分”