7,8天

来源:互联网 发布:centos jdk rpm 编辑:程序博客网 时间:2024/04/30 11:09

day07:

一 :第七天主要为计算机中的进制,不详细发了。

二 :变量的存储细节:1  系统会先分配大字节的地址,后去分配小字节的地址。

 2  先定义的变量地址大于后定义的地址。

 3  高位占高地址,低位在低地址上。(char的本质的整形)


day08:关于数组


一:数组的多种初始化方式:

1:先定义数组  然后进行初始化。:数组只有定义才能够初始化。(在定义数组时,若只定义并没有初始化,那么数组中的值都是垃圾值,所以数组只有初始化了才能够使               用)

      计算数组中有几个元素,通过sizeof.     数组中所占用的字节数是sizeof(scores)    .计算数组中的元素: int count=sizeof(scores)/ sizeof(int);

      1.1 使用常量作为元素的个数;

      1.2  使用变量作为元素的个数。使用变量作为元素个数的好处:延长了做下一步的时间,可以在程序运行到这一行的时候去决定创建多少个元素的数组。

         2:定义数组的同时同时进行初始化:

2.1  指定元素的个数,同时进行全部的初始化。(遍历数组)

2.2  不指定元素的个数 ,同时进行全部的初始化。int nums[]={1,2,3,4,5};

2.3  指定元素的个数,进行部分的初始化。         int nums[5]={1,2};  ----->没有显示初始化的元素被系统将其初始化为0;

2.4  指定元素的个数,为指定的元素进行初始化 。   int nums[5]={[3]=5,[2]=7};

总结:定义数组的同时进行初始化,不可以使用变量作为元素个数。!(注意)


二:数组的存储细节:

(重要)1:数组的地址就是第一个元素的地址。 2:数组中的元素是一块连续的存储空间。3:下标小的元素在小地址上,下标大的元素在大地址上。数组的地址就是数组所占                       用存储空间的首地址。

(重要)注意:注意点1:注意数组角标越界情况。在c语言中越界有时不会报错,会取错值。导致莫名的错误。如果越界离谱,会出现程序崩溃de情况。

    注意点2: 使用变量作为元素个数,不可以进行整体赋值。  整体赋值只有在数组定义时才可以,--->在是数组定义后,不可以使用整体赋值方式对数组进行赋值

三:数组与函数:

1:(重要)基本数据类型作为函数参数传递是值传递。而数组作为函数参数传递时地址传递。--->如果在函数中改变数组中的某个值,那么原来实参的值也会改变。

2:  (重要)当数组作为函数参数传递时,会被自己转化为指针类型,指针用来存放地址变量。指针占用8个字节的存储空间。所以在自己定义的函数中不能够获取到形参数组的长度,只能由主调函数获取并传入。

3: (注意)不能够将数组作为函数的返回值。所以一般为void作为返回值类型。













0 0
原创粉丝点击