今天学习了C语言的字符串和转义字符;我总结了以下的一些知识点来和初学C语言的小伙伴们ide
分享一下!也但愿能获得你们的指点或者能和你们一块儿讨论!学习
字符串的定义:"hello"像这种由双引号引发来的一串字符称之为“字符串”,字符串的结束标志是一个\0的转code
义字符。字符串
而在计算字符串长度的时候\0是结束标志,不算做字符串内容。 编译器
例1string
#include<stdio.h>it
#include<string.h>io
int main(){编译
char arr1[]="abc"; char arr2[]={'a','b','c'}; printf("%d\n",strlen(arr1)); printf("%d\n",strlen(arr2)); return 0;
} class
注释:strlen由string和lenth组成,表示字符串长度,因为计算字符串长度 。
运行结果为(3 随机数)但在加个\0即{'a','b','c','\0'}运行结果为(3 3) ,而之因此会产生随机数是由于
{'a','b','c'}中没有结束标志\0,因此编译时不知道在什么地方中止。
向\0这样类型的字符就称做为转义字符,就此我总结了C语言当中一些其余的转义字符,以下所示。
1 \?在书写多个连续问号时使用,防止他们被解析成三字母词( 例如'??)'会被一些原来的编译器编译成‘】’) 2 \'表示字符常量
3 \"表示一个字符串内部的双引号
4 \a 表示警告字符,蜂鸣.
5 \用于表示一个反斜杠,防止它被解释为一个转义序列符
6 \b退格符
7 \f进纸符
8 \回车
9 \v垂直制表符
10 \ddd(ddd表示1-3给八进制的数字。如;\130X
11 \xdd(dd表示2个十六进制数字。如:\x30 )
其中值得一提的是第10个转义字符\ddd,以下示例。
例2
#include<stdio.h>
int main(){
printf("%c\n",'\132') return 0;
}
其中\132中132是3三个八进制数字 ,132做为八进制的那个十进制数字,做为ASCII码值所对应的字符,
好比八进制132转化为十进制数为70,而70对应ASCII码表的大写Z,该代码的运行结果也为Z,由此
可知\ddd在编译时只能看做一个字符的长度。