Lec5内容讲解

//说真的为什么现在才开始讲数组啊w

P1:数组

数组的一些基础内容在Lec1那里就已经提及,此处用来讲一些其他东西

1 关于数组定义

正如ppt上讲的那样,你不能使用变量来定义数组的大小,但是如果你的数组需要经常更改大小,你可以使用常量来定义数组大小

const int MaxN=10005;
int main(){
	int a[MaxN];
    return 0;
} //在变量类型前加上const即可定义常量,注意常量的值只能在定义时被赋予

2 数组初始化

当你仅仅定义了数组时,数组内部的数据并未被书如,此时可能有多种情况,例如:数据均为零,随机数据等等情况(随环境的不同而不同)

此时,为了防止出现奇怪的错误,我们需要对数组进行初始化,格式如下

int a[5]={1,2};
//此时数组为{1,2,0,0,0}(在编者的环境下)

一个数组的初始化仅能在定义时被完成,需要注意的是,当数组名后边的方括号内没有数字时,数组的大小等于后边填入的数据数量

3 数组越界

数组在电脑内的储存方式等效于等量的变量,换句话说,你访问数组的时候,假如访问了本来并不存在的元素,就可能会访问到其他的变量,例如当你试图访问拥有10个元素的数组A的第20个元素的时候,可能远在天边的一个变量(例如你用来存放答案的ans)就可能被读取并被操作,从而得到一个让人匪夷所思的结果

4 数组的引用

当我们试图在一个函数中使用数组的时候,我们无法也不能将每个数组中的数单独作为参数输入到函数中,与之相对的,我们使用引用来传递数组,我们可以直接使用数组名来表示对于数组的引用,需注意的是此时函数内和一般状况不同,在内部对数组进行更改同样会改变外部数组的数值

void addone(double a[], int len){
    for(int i=0;i<len;i++){
        a[i]++;
    }
}
void main(){
double a[]={1.0,2.0};
addone(a,2);
printf("%f %f\n",a[0],a[1]);
}
//以上是一个通过引用传递数组的实例
//此时输出的是2和3而非1和2

摆了,说实话数组没什么好讲的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值