栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【1.2】初识C语言(字符串)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【1.2】初识C语言(字符串)

目录

0.字符串

1.字符和字符串的比较

2.字符串在内存的存储

3.转义字符

4.打印ASCII码

5.注释


0.字符串

字符:字符指类字形单位或符号,包括字母、数字、运算符号、标点符号和其他符号,以及一些功能性符号(''单引号里面的)

字符串:将多个字符存放在一起(""双引号里面的)

注意:编程中的符号都是英文符号

在C语言中是没有字符串这种特指的类型的,在C语言中双引号引起来的就是字符串("abc")。C语言中,字符串存在字符数组里面。

数组:相同类型的元素集合

这个代码的意思是将abc存放在数组里面,[]表明arr1是个数组,数组名字叫arr1,数组每个元素的类型是char。

1.字符和字符串的比较

上面两种存放方式,都是将a、b、c三个字符存放到数组里面。区别在于,数组里面真正存放的其他元素不一样。

第一个因为是常量字符串形式,也就是说存放的字符就是abc,不能变了。而字符串以''作为字符串的结束标志,也就是说arr1真正存放的是a、b、c、

第二个里面存放的虽然也是字符串,但是是单个存放进去的,后面也没有结束标志。那么,计算机怎么知道你有没有存完呢,一开始也没有指定数组大小啊。所以,第二种是有问题的。

所以第二组打印的时候,会接着后面打印,知道计算机找到一个作为字符串的结束标志才会停止

所以在计算arr1和arr2数组长度的时候,前一个的长度是3,后一个长度是随机值

 strlen是求字符串长度(string length):遇到结束标志停止,需要头文件string

那么怎么做才能让数组arr2正确存储a、b、c呢?只需要将最后添加一个即可。

2.字符串在内存的存储

由于计算机只能认识1、0,那么这么多复杂的字符计算机是怎么存储的呢?

计算机是通过ASCII将键盘上输入的字符存到内存中的,比如说:字符0规定的ASCII码是48,那么计算机就将48认为是0。

那么我们可以得到一个结论,在某种条件下,字符0就等于48

ASCII码:用1Byte表示,也就是8个比特位。因为美国的字符少,所以只使用了低7位,最高位没有使用。所以标准ASCII码的有效范围是0-127(0000 0000 ------0111 1111)

 那么找到的位置,发现对应的是0,那我们也可以通过用0作为数组arr2的结束标志。

注意:这里不能输入'0',因为单引号引起来的是字符,计算机会认为它对应ASCII码的是48,而不是结束标志0 

常见:’A‘------65(41H),'a'------97(61H),'0'------48(30H)

3.转义字符

C语言中的表示转义字符,意思是将原来的意思转变。

比如想要输出一个',不能直接printf("%cn",''');这个代码是错的,因为C语言会自动将前两个引号做匹配,那么第三个就多出来了,所以就会判错。只要将第二个'改变本来引号的意思,就ok了

 常见:a  蜂鸣  t  制表符  n 换行

 ddd(d是三个八进制数):意思是将三个八进制数------>十进制-------->ASCII码

 xdd(d是两个十六进制数):意思是将两个十六进制数------>十进制-------->ASCII码

4.打印ASCII码

 

5.注释

注释两个用处,第一是删除掉暂时不用的代码,第二是为代码添加注释

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/768922.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号