Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C语言 | 字符数组

C语言 | 字符数组

原创
作者头像
小林C语言
修改于 2021-04-12 02:57:06
修改于 2021-04-12 02:57:06
6.2K00
代码可运行
举报
运行总次数:0
代码可运行

C语言字符数组的定义

字符数组是用来存放字符数据的数组,字符数组中的一个元素存放一个字符,定义字符数组的方法和定义数值型数组的方法类似。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//例子:

char character[10];

C语言字符数组的初始化

C语言对字符数组初始化,最容易理解的方式是用“初始化列表”,把各个字符依次赋给数组中各元素。

如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//例子:把10个字符依次分别赋给c[0]~c[9]这10个元素。

char c[10]={'I',' ','a','m',' ',' h','a','p','p','y'};

C语言引用字符数组中的元素

可以引用字符数组中的一个元素,得到一个字符。

C语言字符串和字符串结束标志 

在C语言中,是将字符串作为字符数组来处理的,字符串中的字符是逐个存放到数组元素中的。

为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”,以字符‘\0’作为结束标志。

C系统在用字符数组存储字符串常量时会自动加一个'\0'作为结束符。

‘\0’代表ASCII码为0的字符,从ASCII码表中可以查到,ASCII码为0的字符不是一个可以显示的字符,而是一个“空操作符”,即它什么也不做。

字符数组并不要求它的最后一个字符为'\0',甚至可以不包含'\0'。

C语言字符数组的输入输出

字符数组的输入输出有两种方法。

  • 逐个字符输入输出。用%c输入或输出一个字符。
  • 将整个字符串一次输入或输出。用%s格式符,意思是对字符串的输入输出。

输出的字符中不包括结束符“\0”。

用%s格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名。

如果数组长度大于字符串的实际长度。也只输出到遇“\0”结束。

如果一个字符数组中包含一个以上“\0”,则遇第一个“\0”时输出就结束。

可以用scanf函数输入一个字符串。

C语言字符串处理函数

1、puts函数——输出字符串的函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式;

puts(字符数组)

作用:将一个字符串输出到终端。

2、gets函数——输入字符串的函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

gets(字符数组)

作用:从终端输入一个字符串到字符数组,并且得到一个函数值。

3、注意:用gets和puts函数只能输出或输入一个字符串。

4、stract函数——字符串连接函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

stract(字符数组1,字符数组2

作用:把两个字符数组中的字符串连接起来,把字符串2接到字符串1的后面,结果放在字符数组1中,函数调用后得到一个函数值——字符数组1的地址。

5、strcpy和strncpy函数——字符串复制函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

strcpy(字符数组1,字符串2

作用:将字符串2复制到字符数组1中去。

6、strcmp函数——字符串比较函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

strcmp(字符串1,字符串2

作用:比较字符串1和字符串2,将两个字符串自左向右逐个字符相比,直到出现不同的字符或遇到“\0”为止。如果全部字符相同,则认为两个字符串相等:若出现不相同的字符,则以第1对不相同的字符的比较结果为准。

7、strlen函数——测字符串长度的函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

strlen(字符数组)

作用:测试字符串长度的函数。函数的值为字符串中的实际长度。

8、strlwr函数——转换为小写的函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

strlwr(字符串)

作用:将字符串中的大写字母换成小写字母 。

9、strupr函数——转换为大写的函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
一般形式:

strupr(字符串)

作用:将字符串中小写字母换成大写字母。

C语言字符数组案例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>//头文件
int main() //主函数
{
  char array[3]={'A','b','c'};//字符数组定义和初始化
  printf("%c\n",array[1]);
  return 0;//主函数返回值为0
}

编译运行结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
b

--------------------------------
Process exited after 0.1225 seconds with return value 0
请按任意键继续. . .

以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~

C语言学习路线    C语言开发工具

VC6.0、Devc++、VS2019使用教程

100道C语言源码案例请去公众号:C语言入门到精通

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
C语言字符数组-学习十四
注意:这里不用单个字符作为初值。而是用一个字符串作为初值。数组c的长度不是10,而是11,因为字符串常量的最后由系统加上一个'\0'。
XG.孤梦
2022/02/28
2K0
C语言字符数组-学习十四
5.3 字符数组
注意:用“”%s”格式符输入输出字符串时,printf函数中的输出项是字符数组名而不是数组元 素名
小林C语言
2019/08/19
5960
C语言学习——数组
包含在头文件 string.h 中 字符串输出函数 puts 格式: puts(字符数组) 功能:向显示器输出一个字符串(输出完,换行) 说明:字符数组必须以‘\0’结束。可以包含转义字符。 输出时‘\0’转换成‘\n’,即输出字符后换行。 字符串输入函数gets 格式:gets (字符数组) 功能:从键盘输入一个以回车结束的字符串放入字符数组中,并自动加‘\0’。 说明:输入串长度应小于字符数组维数 字符串连接函数strcat 格式:strcat (字符数组1,字符数组2) 功能:把字符数组2连到字符数组1后面 返值:返回字符数组1的首地址 说明:字符数组1必须足够大 连接前,两串均以‘\0’结束;连接后,串1的‘\0’取消,新串最后加‘\0’。 字符串拷贝函数strcpy 格式:strcpy(字符数组1,字符串2) 功能:将字符串2,拷贝到字符数组1中去 返值:返回字符数组1的首地址 说明:字符数组1必须足够大,>字符串2 字符数组1必须是数组名形式(str1),字符串 2可以是字符数组名或字符串常量。 拷贝时‘\0’一同拷贝 ④不能使用赋值语句为一个字符数组赋值 ⑤可以只复制字符串2中的前几个字符,来取代字符数组1的前几个字符。 strcpy(str1,str2,2) —— 复制前2个。 字符串比较函数strcmp 格式:strcmp(字符串1,字符串2) 功能:比较两个字符串 比较规则:对两串从左向右逐个字符比较(ASCII码),直到遇到不同字符或‘\0’为止。 返回值:返回int型整数。其值是ASCII码的差值 a. 若字符串1< 字符串2, 返回负整数 b. 若字符串1> 字符串2, 返回正整数 c. 若字符串1== 字符串2, 返回零 说明:字符串比较不能用“==”,必须用strcmp,虽然编译无错,但结果不对 。
全栈程序员站长
2022/09/23
8700
C语言学习——数组
字符串的常用函数
其作用是把两个字符数组中的字符串连接起来,把字符串2连接到字符串1后面,结果放在字符数组1中,函数调用后返回值是字符数组1的地址。例如:
pigeon
2022/04/11
5950
字符串的常用函数
C语言从青铜到王者——函数详解【多个实例】
对于一个C程序而言,它所有的命令都包含在函数内。每个函数都会执行特定的任务。有一个特别的函数,名称为main()——该函数是程序启动后,第一个执行的函数。其他所有函数都是main()函数的子函数(或者与之相关联的过程,例如回调函数),并且它们的函数名称可以自己设定。每个函数都只能被定义一次。但一个函数可以根据需要被多次的声明和调用。
C语言中文社区
2022/05/31
6960
C语言从青铜到王者——函数详解【多个实例】
开讲啦:Chap 06 利用数组处理批量数据
要使用数组,必须在程序中先定义数组,即通知计算机:由哪些数据组成数组,数组中有多少元素,属于哪个数据类型,定义数组的一般形式为:类型符 数组名[常量表达式];。
石璞东
2021/10/13
1K0
最全的C语言基础知识梳理总结
C语言是当代人学习及生活中的必备基础知识,应用十分广泛,下面为大家带来C语言基础知识梳理总结,C语言零基础入门绝对不是天方夜谭!
诸葛青云
2019/06/19
2.1K0
最全的C语言基础知识梳理总结
C语言中常用的6个字符串处理函数
功能:把源字符串数组中的字符串复制到目的字符串数组中,字符串结束标志"\0"也一同复制
C语言中文社区
2022/05/30
8180
C语言中常用的6个字符串处理函数
C语言基础知识梳理总结[通俗易懂]
C语言是当代人学习及生活中的必备基础知识,应用十分广泛,下面为大家带来C语言基础知识梳理总结,C语言零基础入门绝对不是天方夜谭!
全栈程序员站长
2022/10/01
8510
C语言常见字符函数和字符串函数精讲
在C语言编程中,字符函数和字符串函数是处理文本数据不可或缺的工具。本文将详细介绍这两类函数的定义、功能、使用方法,并通过示例代码帮助读者更好地理解和应用这些函数。
平凡之路.
2024/10/09
1650
C语言常见字符函数和字符串函数精讲
C语言一维数组二维数组、字符数组【C语言学习笔记】
同一数组中每个元素的数据类型(int long short double float char...)必须相同。
岳泽以
2022/10/26
1.5K0
数组知识点(详解)
2.在scanf函数中的输入如果是字符数组名,不要在加取值符&,因为数组名代表数组的起始位置
喜欢做梦
2024/11/25
2180
数组知识点(详解)
【期末复习】考试月来临!☀️C语言复习,这一篇带你逃离挂科区!(上)⭐️
注意:变量必须先定义后使用,在变量取值时,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据
小丞同学
2021/08/16
9200
C语言——数组
什么是数组呢?从名字上来看,数组、数组是不是就是数据的组合呢?让我们来看看数组的概念,数组是⼀组相同类型元素的集合,我们需要注意的是数组中存放的是1个或者多个数据,但是数组元素个数不能为0。同时 数组中存放的多个数据,是相同类型的。
用户11352420
2024/11/07
4920
C语言——数组
C语言 常用标准库函数 初学者常用
 C语言能用的函数有很多,限于篇幅,加上本人也是初学者,在这里只给出初学者常用的标准库函数。
叶茂林
2023/07/28
4870
C语言:字符数组的输入输出
如果scanf中%d是连着写的如“%d%d%d”,在输入数据时,数据之间不可以用逗号分隔,只能用空白字符(空格或tab键或者回车键)分隔——“2 (空格)3(tab) 4” 或 “2(tab)3(回车)4”等。若是“%d,%d,%d”,则在输入数据时需要加“,”,如“2,3,4”。
全栈程序员站长
2022/09/18
4.9K0
C语言:字符数组的输入输出
稳准狠!最全讲解!初学者必看的C语言字符串知识
字符数组和普通数组一样,也是通过下标引用各个元素。 【示例】输出字符数组中的元素。
老九君
2018/08/22
5630
稳准狠!最全讲解!初学者必看的C语言字符串知识
c语言每日一练(6)
A、 测字符数组ch的长度 B、 将数字字符串ch转换成十进制数 C、 将字符数组ch中的小写字母转换成大写 D、 将字符数组ch中的大写字母转换成小写
大海里的番茄
2024/01/19
1360
c语言每日一练(6)
江哥带你玩转C语言| 12 -二维数组和字符串
如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是江哥持续更新的动力。
极客江南
2021/07/11
1.5K0
C和C++中字符串说明与记录
目的C语言字符基本说明字符串声明与操作字符串常用函数说明属性复制合并替换查询比较类型检查类型转换
用户7886150
2021/02/17
1.1K0
相关推荐
C语言字符数组-学习十四
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验