一、数组概述
构造数据类型之一;数组是具有一定顺序关系的若干个变量的集合,组成数组的各个变量称为数组的元素;数组中各元素的数据类型要求相同,用数组名和下标确定;数组可以是一维的,也可以是多维的。
1、一维数组
所谓一维数组是指只有一个下标的数组。它在计算机的内存中是连续存储的;C语言中,一维数组的说明一般形式为:<存储类型> <数据类型 > <数组名>[常量表达式] ;
注:C语言对数组不作越界检查,使用时要注意;数组名表示内存首地址,是地址常量;sizof(数组名)是数组占用的总内存空间;未使用static修饰的数组不初始化值,其元素值为随机数;对static数组元素不赋初值,系统会自动赋以0值;可以只给部分数组元素赋初值,未赋值部分其值不确定。
2、二位数组
二维数组的定义一般形式为:数据类型 数组名[常量表达式][常量表达式];
注:二位数组元素的存放是按行序优先、顺序存放的,因为内存是一维的。具有两个或两个以上下标的数组称为多维数组。
3、字符数组
字符数组是元素的数据类型为字符类型的数组。
字符数组的初始化:逐个字符赋值;用字符串常量。
C语言中无字符串变量,用字符数组处理字符串,字符串结束标志:‘\0’。
4、字符串函数
C库中实现了很多字符串处理函数
#include <string.h>
a、常见的字符串处理函数:
求字符串长度的函数strlen,不包括‘\0’在内
字符串拷贝函数strcpy,返回字符数组1的首地址,字符数组1必须足够大‚拷贝时‘\0’一同拷贝
字符串连接函数strcat,返回字符数组1的首地址,字符数组1必须足够大‚连接前,两串均以‘\0’结束;连接后,串1的 ‘\0’取消,新串最后加‘\0’
字符串比较函数strcmp,对两串从左向右逐个字符比较(ASCII码),直到遇到不同字符或‘\0’为止,返回int型整数,若串1<串2,返回负整数;若串1> 串2,返回正整数;若串1== 串2, 返回零。
b、字符串处理函数
strncpy(p, p1, n) 复制指定长度字符串
strncat(p, p1, n) 附加指定长度字符串
strcasecmp忽略大小写比较字符串
strncmp(p, p1, n) 比较指定长度字符串
strchr(p, c) 在字符串中查找指定字符
strstr(p, p1) 查找字符串
isalpha() 检查是否为字母字符
isupper() 检查是否为大写字母字符
islower() 检查是否为小写字母字符
isdigit() 检查是否为数字
C语言数组和字符串函数
猜你喜欢
转载自www.cnblogs.com/sanwumanzi/p/10515950.html
今日推荐
周排行