一批具有同名的同属性的数据组成一个数组。数组具有以下特点:
定义一维数组的一般形式为:
类型符 数组名[常量表达式]
说明:
数组定义并对各元素赋值后,可以引用数组中的元素。
引用数组元素的表示形式为:
数组名[下标]
下标可以是整形常量或整形表达式。数组元素的下标从 0 开始,最大为数组长度 - 1。
常在定义数组的同时给各元素赋值,称为数组的初始化。
可以用“初始化列表”方法实现数组的初始化。
说明:在定义数值型数组时,指定了数组的长度并对之初始化。未被“初始化列表”指定初始化的数组元素,系统会自动初始化为 0(字符型数组初始化为 ‘\0‘,指针型数组初始化为 NULL)。
二维数组定义的一般形式为:
类型符 数组名[常量表达式][常量表达式]
二维数组可被看作一种特殊的一维数组,它的元素是一个一维数组。
用矩阵形式表示的二维数组是逻辑上的概念。在内存中各元素是连续存放的,是线性的。C 语言中,二维数组中元素排列的顺序是按行存放的。
C 语言中还可定义多维数组,概念同二维数组。
二维数组元素的表示形式为:
数组名[下标][下标]
在引用数组元素时,行下标和列下标应在已定义的数组大小的范围内。
可以采用“初始化列表”对二维数组初始化。
C 语言中没有字符串类型,字符串是存放在字符型数组中的。
用来存放字符数据的数组是字符数组。在字符数组中的一个元素内存放一个字符。
字符型数组以整数形式(ASCII 代码)存放的,因此可以用整形数组来存放字符数据。
字符数组的初始化,以“初始化列表”的方式把各个字符依次赋给数组中各元素。
如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的。
使用“初始化列表”给字符数组部分元素赋值时,其后的元素会自动定为空字符(即 ‘\0‘)。
使用“初始化列表”给字符数组全部元素赋值时,定义时可以省略数组长度。
可以引用字符数组中的一个元素,得到一个字符。
C 语言中,字符串作为字符数组来处理的。字符串是存放在一维数组中的。
C 语言规定了一个“字符串结束标志”,以字符‘\0’作为结束标志。在遇到字符‘\0’时,表示字符串结束,前面的字符组成一个字符串。
C 系统在字符数组存储字符串常量时会自动加一个‘\0’作为结束符。用‘\0’作为字符串结束标志不会产生任何附加的操作或增加有效字符,只起一个供辨别的标志。
在字符数组初始化时常常人为地加上一个‘\0’。此外,字符数组初始化还能用字符串常量来使字符数组初始化。
在使用 printf 格式化输出字符串时,遇到‘\0’就停止输出。因此,只会输出第一个‘\0’之前的字符。
字符数组的输入输出有两种方法:
说明:
C 函数库中提供了一些用来专门处理字符串的函数。
1. puts 函数——输出字符串的函数
一般形式为:
puts(字符数组)
puts 函数的作用是将一个字符串(以‘\0’结束的字符序列)输出到终端,字符串中可以包含转义序列。
在用 puts 输出时将字符串结束标志‘\0’转换成‘\n’,即输出完字符串后换行。
2. gets 函数——输入字符串的函数
一般形式为:
gets(字符数组)
gets 函数的作用是从终端输入一个字符串到字符数组,并返回字符数组的起始地址作为函数值。
注意:用 puts 和 gets 函数只能输出或输入一个字符串。
3. strcat 函数——字符串连接函数
一般形式为:
strcat(字符数组 1, 字符数组 2)
strcat 函数的作用是把两个字符数组中的字符串连接起来,把字符串 2 拼接到字符串 1 的后面,结果存放在字符数组 1 中,并返回字符数组 1 的起始地址作为函数返回值。
说明:字符数组 1 必须足够大,以便容纳连接后的新字符串。在连接时将字符串 1 后的‘\0’去掉,只在新串最后保留‘\0’。
4. strcpy 和 strncpy 函数——字符串复制函数
一般形式为:
strcpy(字符数组 1, 字符数组 2)
strncpy(字符数组 1, 字符数组 2, n)
说明:
5. strcmp 函数——字符串比较函数
一般形式为:
strcmp(字符串 1, 字符串 2)
strcmp 函数的作用是比较字符串 1 和字符串 2。
说明:字符串比较的规则是将两个字符串自左至右逐个字符比较(按 ASCII 码值大小比较),直到出现不同的字符或遇到‘\0’为止。
比较的结果由函数值返回。
注意:不能用比较运算符对两个字符串进行比较,因为字符数组名代表地址。
6. strlen 函数——测字符串长度的函数
一般形式为:
strlen(字符数组)
strlen 函数是测试字符串长度的函数,返回字符串的实际长度(不包括‘\0’在内)作为函数返回值。
7. strlwr 函数——转换为小写的函数
一般形式为:
strlwr(字符串)
strlwr 函数的作用是将字符串中大写字母转换成小写字母。
8. strupr 函数——转换为大写的函数
一般形式为:
strupr(字符串)
strupr 函数的作用是将字符串中小写字母转换成大写字母。
库函数并非 C 语言本身提供的组成部分,而是 C 语言编译系统提供的公共函数。
注意:在使用字符串处理函数时,应当在程序文件开头引用 #include <string.h>
头文件。
原文:https://www.cnblogs.com/peabits/p/15207386.html