C语言字符数组的定义

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

//例子:char character[10];

C语言字符数组的初始化

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

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

//例子:把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函数——输出字符串的函数

一般形式;puts(字符数组)

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

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

一般形式:gets(字符数组)

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

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

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

一般形式:stract(字符数组1,字符数组2)

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

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

一般形式:strcpy(字符数组1,字符串2)

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

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

一般形式:strcmp(字符串1,字符串2)

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

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

一般形式:strlen(字符数组)

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

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

一般形式:strlwr(字符串)

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

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

一般形式:strupr(字符串)

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

C语言字符数组案例

#include//头文件
int main() //主函数
{char array[3]={'A','b','c'};//字符数组定义和初始化 printf("%c\n",array[1]); return 0;//主函数返回值为0
}

编译运行结果:

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

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

C语言 | 字符数组相关推荐

  1. C/C++ | C语言字符数组初始化,有些赋值方式千万注意

    一.字符数组的定义和初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. charstr[10]={'I','','a','m','','h','a','p','p','y'}; ...

  2. C语言 字符数组 和 字符串 详解

    C语言 字符数组 和 字符串 详解 用来存放字符的数组称为字符数组,例如: char a[10]; //一维字符数组 char b[5][10]; //二维字符数组 char c[20]={'c', ...

  3. C语言字符数组越界问题

    C语言字符数组踩坑 如果运行下面的代码会发生输出什么? #include<stdio.h> #include<string.h>/*** 输出结果* a1:wohello* a ...

  4. c语言字符数组赋值超过,C语言字符数组赋值

    C语言字符数组赋值教程 C语言字符数组赋值详解 语法 arr[index] = value; 参数 参数 描述 arr 数组名. index 需要赋值的下标索引. value 需要设置的值. 说明 给 ...

  5. python定义字符串数组初始化_字符数组及其定义和初始化,C语言字符数组详解...

    字符数组及其定义和初始化,C语言字符数组详解 字符串的存储方式有字符数组和字符指针,我们先来看看字符数组. 因为字符串是由多个字符组成的序列,所以要想存储一个字符串,可以先把它拆成一个个字符,然后分别 ...

  6. C语言字符数组与字符串的使用及加结束符‘\0‘的问题

    1.字符数组的定义与初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y ...

  7. strcmp可以比较数组么_6.3 C语言字符数组

    01字符数组的定义 1.用来存放字符数据的数组是字符数组.字符数组中的一个元素存放一个字符. 2.定义字符数组的方法和定义数值型数组的方法类似. 例子: char c[10]; 02 字符数组的初始化 ...

  8. php和c语言的字符数组中,字符数组和字符串的区别,C语言字符数组和字符串区别详解...

    C 语言中并不存在字符串这个数据类型,而是使用字符数组来保存字符串.那么,字符数组就一定是字符串吗? 对于这个问题,大多教科书中的回答是"是".其实不然,字符数组和字符串是完全不相 ...

  9. c语言字符数组与字符串的使用详解

    转自http://www.jb51.net/article/37456.htm 1.字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. char str[10]={ ...

最新文章

  1. python爬虫招聘-Python爬虫-爬取招聘网站信息(一)
  2. 你对Java网络编程了解的如何?Java NIO 网络编程 | Netty前期知识(二)
  3. 计算机等级考试二级c语言笔试,全国计算机等级考试二级C语言笔试试题和答案.doc...
  4. 虚拟化安全防护系统部署在安全服务器上,虚拟化安全防护-安天 智者安天下
  5. 织梦dedecms模板--物流快递网站模板源码-带手机版数据同步
  6. Linux性能测试分析命令_sar
  7. 【PMP】项目整合管理
  8. HDU 4417 Super Mario 主席树
  9. python进阶12 Redis
  10. Linux信号量操作
  11. 各学科领域入门书籍推荐
  12. 【机器学习15】决策树模型详解
  13. win10关闭某个端口
  14. Java开发-应届生面试常常涉及到的问题
  15. 三生三世.枕上书 麦田里的守望者坎坷飞的
  16. python 批量处理图片文件(做到图片不变形)
  17. 【杂谈】 Listary自带的字典功能失效?没关系,让我们自己来改造它
  18. 信息无障碍的发展和技术实践
  19. SQL 中 TRIM()函数用法
  20. debian linux 硬盘,Debian硬盘安装

热门文章

  1. java 8 集合分组_Java 8:按集合分组
  2. QuickBooks和Sage数据导出器
  3. 使用AWS Lambda在Go中构建RESTful API
  4. scala和java像不像_关于Java和Scala同步的五件事你不知道
  5. 使用Java的@Deprecated前瞻
  6. Apache Kafka流+机器学习(Spark,TensorFlow,H2O.ai)
  7. 带有JAX-WS和Spring的Web服务应用程序
  8. scala akka_使用Scala,Play和Akka连接到RabbitMQ(AMQP)
  9. jetty代理jetty_如何在Jetty中使用SPDY
  10. java 编写代码_Java 7:如何编写非常快速的Java代码