记录 学习C语言1

数组

  1. 定义

数组就是具有一定顺序关系的若干变量的集合,其中每个变量都是数组的元素

特点:

1、数据类型相同

2、地址连续

存储类型 数据类型 数组名

存储类型:auto register static extern  若省略相当于auto

数据类型:数组中每一个元素的数据类型

数组的数据类型:数据类型 [元素个数]

数据类型:去掉变量名就是数据类型

数组名:代表的是整个数组以及首个元素的地址

元素的个数必须是一个常数,不可以是变量,但是可以用符号常数或者常量表达式,如a[3+2]

2.初始化

2.1局部初始化

对于普通局部数据,若定义时没有初始化,则数组中元素的值时不确定的。

2.2static数组不初始化

Static修饰的数组定义时没有初始化,则数组中的元素的值默认为0

2.3全部初始化

int a[5] = {1,2,3,4,5};

int a[ ] = {1,2,3};//数组元素的个数由后面赋值的具体个数来决定

int a = 5;//初始化

2.4总结

如果数组定义在函数体内部,没有初始化,其值不确定

如果数组定义在函数体外部,没有初始化,其值默认为0

Static修饰的数组,没有初始化,其值为0

3.数组的访问

数组名[下标]

下标从0开始,若数组在定义时指定有n个元素,则数组的下标范围为0~(n-1)

字符数组

字符数组的本质:字符串,以’\0’作为结束符

存储类型 数据类型 数组名[元素的个数];

char str[6] = {‘h’,’e’,’l’,’l’,’o’,’\0’};

char str[6] = “hello”;

char str[6] = {“hello”};

字符数组清零:char str[6] = {‘\0’};

注意:在输入的时候,一定要留一个位置用来保存’\0’

字符串的输出函数

puts(数组名);

函数功能:将字符串输出到屏幕上,自动添加\n并

注意:遇到’\0’输出结束

字符串的输入函数

gets(数组名);

功能:从键盘上获取字符串保存到数组中

注意:(1)自动在末尾添加’\0’ (2)不会进行越界检查

字符串处理函数

strlen、strcpy、strcat、strcmp

头文件:#include <string.h>

1、strlen

strlen(数组名);

功能:求字符串的长度

返回值:返回求到的字符串的实际长度,不包含’\0’

sizeof和strlen的区别:

  1. sizeof是运算符,而strlen是函数
  2. Sizeof求的是整个空间的大小,strlen求的是字符串的实际长度,包含\0

2、strcpy

strcpy(数组1,数组2);

功能:将数组2中的字符串拷贝到数组1中,包含’\0’,相当于完全拷贝

注意:数组1的容量要大于数组2

           数组2也可以是字符串

strncpy(数组1,数组2,n);

功能:将数组2中的前n个字符拷贝到数组1中

注意:拷贝的内容不包含‘\0’

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

is_xiaotian

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值