C语言学习笔记-字符串和转义字符

C语言学习笔记-字符串和转义字符,第1张

字符串

用双引号引起来的一串字符简称字符串

字符串的结束标志是一个\0的转义字符。\0不算作字符串的内容

用双引号引起的字符串末尾会默认添加一个\0作为结束标志

可以看到array2没有\0作结束标志会打印除正常内容的其它内容,而在array3添加了\0后就和array1一样了

 strlen() 计算字符串长度 //string length

 array1长度为3字节

     array1的值为双引号引起的字符串,在abc后面添加了一个\0,所以在计算长度时遇到\0停止,而且\0不计入长度

 array2长度为15字节

     array2的值不是字符串,在末尾没有\0,所以在计算的时候一直往后计算,遇到值为0(\0的值为0)停止计算,所以这个值是未知的,为随机值

转义字符  //转变原来的意思的字符

\n代表换行,而如果单单输入一个n的话就单纯的是个字符n而已。

如下代码:

   

\表示转义,而如果我们想打印一个路径的话,就会出现如下结果

test中的t被转义了,\t代表水平制表符,相当于按一下Tab健。

可以用斜杠转义斜杠,让斜杠就是一个普通的斜杠

可以看到t没有被转义为水平制表符,这是因为"\"把"\"转义为了一个正常的"\"

 emmm….好绕口,大概就这意思[doge]

 如果你想打印一个单引号或者双引号:

这样写是不可行的,这时候我们就需要转义中间那个单引号  \'

转义单引号之后:

双引号同理

\ddd  ddd表示1~3个八进制数字。八进制数字由0-7组成。

举个例子:

\132   这里的\132代表的是一个字符

\132是一个八进制数----转换为十进制------>90------ASCII码代表的是Z

\xdd  x代表十六进制 ,dd代表两个十六进制数。十六进制数由0~9和A~F组成

举个例子:

\x61

\x61----转换为十进制------>97------ASCII码代表的是a

补充 :strlen()当使用这个函数时,需要引入string.h文件

#include

而如果没有声明string.h的话,也可以正常运行

不过会有Warning

关于不声明头文件也可以执行,我去百度搜了一下:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/728613.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存