字符串
用双引号引起来的一串字符简称字符串
字符串的结束标志是一个\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
关于不声明头文件也可以执行,我去百度搜了一下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)