A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 靳小龙 中级黑马   /  2015-9-8 00:00  /  977 人查看  /  6 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

1. 一维数组

C规定不能对数组作动态定义,只能静态对数组初始化,方括号内可以是符号常量(宏定义),但不能是变量。给数组初始化时可以不指定数组长度,编译器根据数组中被初始化元素的数量,自动确定数组长度。

当初始化元素的数量小于数组长度时,前n个元素被初始化,剩下的为0

如果不给数组初始化,数组的每个元素为默认值。

数组的最小下标是0  最大上标是数组长度-1

2. 二维数组

一个二维数组可以分解为多个一维数组

二维数组是按行排列的

求一个二维数组所占空间字节数公式:行数*列数*类型字节数=总字节数

若只对部分元素赋值,未赋值的元素自动取0值。

多维数组靠近数组名的第一个下标可以省略不定义,但其他的都必须定义其大小

3. 字符数组

字符型数据:字符型数据包括字符常量、转义字符常量、字符串常量、字符变量、符合常量。

字符常量:由单引号括起来的单个字符

转义字符常量:以反斜杠开头的特殊字符序列,意思是把反斜杠后面的字符转换成特定的含义

字符串常量:用双引号括起来的字符序列

c语言有字符常量和字符变量,有字符串常量,但没有专门存放字符串的变量,c语言用字符数组存放字符串。每个字符串以‘\0’结束。在字符数组中,第一个\0前面的所有字符和\0一起构成了字符串,\0之后的其他数组元素与该字符串无关。

定义字符数组时,数组长度>=有效字符个数+1 最后一个存放‘\0’,如果初值个数大于数组长度,则按照语法错误处理,初值个数小于数组长度,则只将花括号中的字符分别赋给数组中前面的元素,其余的元素自动定为空字符。

c允许用字符串的方式对数组作初始化赋值,列如:char ch[]=”china”;

用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志’\0’

Scanf(“%s”);函数输入时以回车和空格作为分隔符,gets()只以回车作为分隔符。

部分字符串处理函数 (需要包含头文件“string.h”)

puts(字符数组) 将一个字符串输出到终端。

gets(字符数组) 从终端输入一个字符串到字符数组,并且得到一个函数值,为该字符数组的首地址 (vs里需要写成gets_s)

strcat(字符数组1,字符数组2) 连接两个字符数组中的字符串,数组1必须足够大。

(vs里需要写成strcat_s)

Strcpy(字符数组1,字符串2) 将字符串2拷贝到字符数组1中。 (vs里需要写成strcpy_s)

Strcmp(字符串1,字符串2) 比较字符串,相等返回0,字符串1>字符串2,返回正数,小于返回负数。  

Strlen(字符数组) 求字符串长度。

Strlwr( 字符串) 将字符串中的大写字母转换成小写 (vs里需要写成 _strlwr_s)

Strupr( 字符串)  将字符串中的小写字母转换成大写 (vs里需要写成 _strupr_s)

以上是一些比较常用的字符串处理函数。


6 个回复

倒序浏览
楼主很赞啊,很详细~
回复 使用道具 举报
看蒙圈了
回复 使用道具 举报
赞一下。。。。。
回复 使用道具 举报
太详细了,必须收藏!!!!!!!!
回复 使用道具 举报
很详细,点个赞!
回复 使用道具 举报
很详细,收藏咯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马