C语言——字符串+转义字符+注释
(一)字符串
- 如何在C语言中存一个字符串呢?
猜猜看打印的结果是什么?
为什么调试结果是这样呢?
- 首先,先解释一下arr 即数组的概念
当我们想要打印一些数字的的时候,比如从1-100,这时候我们不可能去创建int n=1;int n=2;等等这样100个变量,这时候为了方便,我们就引入了数组。
我们输入 int arr[100]={1};
这时候就表明我们输入了100个数,从1到100.
现在,就来对打印结果做解释。
当我们用 hello 来初始化 arr1 的时候,这个字符串此时末尾隐藏了一个' \0 ' ( '\0' 也是一个字符,要用单引号引起来), 而' \0 '就是字符串的结束标志,因此打印出hello就结束了。
而 arr2 里输入的是一些字符,没有结束标志,数据输入到内存块中并打印出时,由于打印的是字符串,但是没有遇到结束标志\0,因此会继续打印字符'c'后面内存块里的内容,因此会随便打印,知道我在内存中的某个位置中遇到一个\0,此时就会结束并输出打印内容。
因此我们在 arr3 后面中主动加上'\0' ,就会结束打印,输出我们想要的结果。
- 这个时候,我们来拓展一下:
让我们来打印一下我们输入的字符数组的长度
这里的strlen是用来求字符串长度的,打印前要加上#include<stdio.h>
意思是我们将求出的字符长度再次赋给 len 成为输入值,下面的同理
来让我们看看输出结果
3 表明 'abc' 的字符串长度为3 (abc\0) \0是结束标志,碰到它时就结束,因此不计入长度。
5 表明之前输入的arr1里的字符长度为5,同理
但为什么arr2的字符长度是25呢?
arr2 里的字符是(abc) ,它并没有结束标志,因此会在内存块里继续读取,直到遇到一个\0
综上可知,\0对于字符串打印有多么重要,同时,strlen 打印字符串长度时,只打印\0之前的长度。
(二)转义字符
转义字符是以‘\’为开头的字符,后面跟一个或几个字符,其意思是将反斜杠‘\’后面的字符转变成为另外的意义。
常见的转义符及其ASC||码
为什么需要转义字符呢?我们来举个例子。
假如我们要打印一个目录,名称为 : c:\test\2021\test.c
怎么来写这个代码呢?试试看
是这样吗?
让我们来看一下调试结果:
嗯?结果好像和我们想象中的不太一样。为什么呢?
看看上面的代码,再对比常见的转义字符,发现了吗?
c:\test\2021\test.c 原来我们想要打印的东西被这样转义了,所以怎么打印出我们想要的结果呢?
当我们再加上一个\的时候,原来的\就不是转义字符了。来看看结果
成功打印出了我们想要的东西。
其他的转义字符按照它的解释都有使用情况。自己多看,最好记住一些常用的。这里就简单解释一下。
- \n就是换行的意思,当\0在字符串里的时候,不需要用单引号引起来,但是其他条件下,需要单引号引起来。因为它本身也是一个字符,是字符就需要用单引号引起来
- ??) 被认为是三字母词,有的编译器调试出来不相符。因此,输入代码时,敲成\?\?)
- 当我们想要打印常量变量的时候,比如a,输入 printf("%c",'a');即可
如果想要打印单引号 输入%c,‘\’’ 也是转义字符
- 当打印时想要a\b\c的效果,需要进行转义,即编码时敲出a\\b\\c
- \a 警告字符,蜂鸣
- \t (水平制表符) 即tab 键,相当于一些空格键,且其空格的字符可以调节,具体在 工具-文本编译器-c/c++-制表符
- \v 垂直制表符
- \ddd 表示1-3的八进制数字 比如\130 代表 X 原因是将八进制的130转换成十进制 ,转换后是88,在ASC||编码中找到对应的符号就是X。
- \xdd表示两个十六进制数字,同理
(三)注释
1.使用情况
- 代码中有不需要的代码可以直接删除,也可以注释掉
- 代码中有些代码比较难懂,可以加一下注释文字
2. 注释风格
- C语言风格的注释 /*xxxxxx*/
- C++风格的注释 //xxxxxxxx
- 代码复杂时注释进行解释说明
- 平时尽量多写注释,但不要过度
C语言——字符串+转义字符+注释相关推荐
- C语言学习笔记—P2(<C语言初阶>+<字符串+转义字符+注释>+图解+题例)
目录 1.变量的使用 2. 变量的作用域和生命周期 3. 常量 4. 字符串 5. 注释 后记:●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教! ...
- 初识C语言(1)(2)(3)(4) C语言入门 保姆级教程 变量 常量 字符串 转义字符 操作符 关键字 字符串 指针 函数 结构体 数组 选择语句 循环语句
一.如何写C语言代码 1.编译器 2.创建项目 3.创建源文件 4.写代码 5.编译+链接+运行 项目名字不要汉语,不要特殊字符,不要加空格,项目路径一般为你想要的路径 C语言中,一般创建.c源文件, ...
- Golang 从菜鸟到大咖的必经之路_GO 语言的转义字符、注释、规范和代码风格要求
目录 一.GO 语言转义字符 A.Golang 常用的转义字符(escape char): B.课程练习 二.Go 语言注释: A.注释(Comment): B.Go 语言中的注释类型: C.注释不会 ...
- C语言:字符串+转义字符+ASCLL码
目录 字符串 转义字符 ASCLL码 字符串 字符串就是由双引号引起来的一串字符比如"abc" 字符串的结束标志是\0字符,如果没有字符串,那么编译器会将遇到的第一个\0作为结束标 ...
- c语言中转义字符efg,C语言试题.docx
<C语言试题.docx>由会员分享,可在线阅读,更多相关<C语言试题.docx(56页珍藏版)>请在人人文库网上搜索. 1.第一章C语言概述 一.选择题: 1.一个C程序的执行 ...
- c 字符串 html转义字符串,字符串转义字符
转义字符是编程语言中表示字符的一种特殊形式.字符串转义字符是用来表示字符集中定义的字符,或者是某一些特定的字符在编辑语言中被定义为特殊用途的字符.一般用于表示不能直接显示的字符,比如后退键.回车键等, ...
- java 获取注释_Java面试题Java语言有哪些注释的方式?
点击上方"千锋Java学院",选择"置顶公众号" 每天一道面试模拟真题及解析 课前导读 ●回复"每日一练"获取以前的题目,持续更新! ●我希 ...
- C语言——字符串函数
C语言--字符串函数 宗旨:技术的学习是有限的,分享的精神是无限的. 常用字符串操作函数的实现:注释部分你们注意一下,我没加/,加了/就看不到注释了. ************************ ...
- python语言的注释语句引导符不包括什么_以下选项中,哪一个是Python语言中代码注释使用的符号?________...
[单选题]关于 Python 语句 P = –P,以下选项中描述正确的是________ [多选题]Python的数字类型包括( ) [多选题]Python中的注释符有哪几种?( ) [判断题]已知 ...
最新文章
- 听声辨位过时了!这个AI系统仅凭光回声就能得到3D图像
- 深入卷积神经网络背后的数学原理
- 专为设计师而写的GitHub快速入门教程
- PHPCMS v9 二次开发_验证码结合Session开发
- 不可思议黑科技,Xamarin移动开发新时代
- 为什么坚持一件事总是那么难,而且有时候总是三分钟热度?
- stimwoo大师解释MSDP与MBGP的关系
- cocos2d-x自制工具07:打印cocos2d-x的节点树
- asp.net oracle连接数据库,通过ASP.NET连接Oracle数据库实例教程
- AutoCad注册机使用方法
- php中session销毁,PHP中session变量的销毁
- Django深入模板引擎
- Windows系统遇到不能打开要写入的文件怎么办?----重启电脑即可
- 苹果cms影片集数不更新解决方法
- 逐条讲解python_名校教授推荐:Python458集大型视频,从正确的方向出发学习
- 遍历Lua全局环境变量
- PCB常见的几种钻孔
- 均值不等式链的几何证明
- 000898先生的留言
- Unit Test and Integration Test
热门文章
- linux部署的Oracle 11G数据库创建实例
- Java itext实现图片转pdf
- linux内存96后无法连接,linux服务器因磁盘空间满导致oracle数据库无法连接问题探索...
- 计算机卡顿cmd,看这里!知道君告诉你电脑卡顿的终极解决方案
- 触碰岁月——土楼潇洒穷游记
- 职业操盘手的止损法则
- php 浏览器唯一标识符,在PHP中获取唯一的Web浏览器ID
- 红外图像处理:去竖条
- 大话系列 | 逻辑回归的入门与优化
- 【云服务架构】什么是云原生应用?有哪些特点?来看看阿里云大学公开课给你答案