page contents

C语言基础-3

C语言基础-3

一、数组

1、什么是数组?

①看名字就能想的到因该是一些数然后组成的一组,所以叫数组,也就是存放多个元素的一个组

2、什么情况下要使用数组?

②在遇到要存多个相同元素的时候可以用到,注意是相同的元素,这个是数组的特点存的是相同的元素

3、数组怎么定义?(一维数组)

③类型 标识符[大小];

(1)类型:一个数据类型

(2)标识符:符合标识符命名规则和规范

(3)大小:必须是一个常量,而且大于0

那么这样定义完一个数组之后:比如int arr[10];那么这个数组arr就能存10个int类型的值

4、数组怎么使用?

①通过数组名+下标进行访问比如  arr[2];表示访问的数组里面下标为2的元素

②在通过①这种方式去访问的时候,下标不能越界访问,下标是从0开始的,所以对于一个大小为n的数组,那么他的下标是0~n-1

所以定义了一个数组 int arr[10];那么就可以 arr[0]=1,arr[2]=2;这样去存值,下标最大到9,能存10个

5、数组的初始化

①int arr[10]={1,2,3,4,5,6,7,8,9,0};这样去写,那么里面的值就会从0开始放入数组,arr[0]就是1,arr[1]就是2,后面的以此类推

②那么就可能出现这种情况 int arr[10]={1,2,3};前面的1,2,3还是按①的方法去想,那么就还有一部份没有值,他们会被初始化为0

6、二位数组

①二位数组把他理解为有行和列的东西,从0行0列开始

②定义:int arr[行大小][列大小];行和列就看有多少行和列,行*列就是能存的元素个数,访问也和一维数组一样arr[行下标][列下标]

③在使用的时候就把这个元素想象成行列的一个组成,写这个元素在这个数组的多少行和多少列就可以了

④初始化,为了好理解,int arr[3][4]={1,2,3,4,

5,6,7,8,

9,10,11,12};

写成这种形式,那就3行4列,要访问里面的元素7,那就是arr[1][2];应为7所在1行2列的位子,行列都是从0开始数的,没赋值的地方还是0

7、更多维的数组就步讨论了,一般用不到

二、字符串

1、什么是字符串?

①在c/c++中,通过"aaaa"形式表现出来的就是一个字符串,也可以理解为多个字符组成的,但是写法是前面的写法

2、字符数组

①字符数组,就是用来存字符串的,但实际是存了多个字符

②定义char arr[10]="asdf";这样写表示定义了一个字符数组,大小为10,存了4个字符,但是4个字符组成了一个字符串

也可以写成char arr[10]={'a','s','d','f'};和上面是一个道理

3、字符数组需要注意的地方

①在字符串的末尾都有一个'\0',所以在定义数组来存的时候要注意

②中文汉字在C语言中,通常是占2个字节

③字符串的有效长度不包括'\0',但是在定义数组来存的时候要包括它

④'\0',如果是上面的写法,可以不用自己加,都是默认初始化有的,在没有初始化自己赋值的时候就需要加上去

⑤对于字符串的处理函数,下去查查文档就好了,比如strlen,strcpy等等

  • 发表于 2021-09-26 21:05
  • 阅读 ( 600 )
  • 分类:C/C++开发

0 条评论

请先 登录 后评论
易木
易木

5 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1474 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章