目录
1.字符串
1.1 字符串的表示
1.2 字符串的结束标志
1.3 字符串的长度
2.转义字符
2.1 常用转义字符
2.2 特殊转义字符
2.3 转义字符的大小
3.注释
3.1 什么是注释
3.2 注释原则
4.ASCII表
4.1 ASCII值
4.1.1产生原因
4.1.2表达方式
4.2 特殊的ASCII值
4.3 大小写转换小妙招
C语言中有字符(char)类型,但是没有字符串类型;那么在C语言在如何表示字符串呢
"hello world\n"
像这样,用" "引起来的一串字符称为字符串;字符串的结束标志是一个'\0'的转义字符。
字符串其实就是一串字符,字符串是可以存放到字符数组里边的。
#include 'stdio.h'
int main(){
char arr1[] = "abc";//直接用" "引起来
char arr2[] = { 'a','b','c' };//字符用{}括起来,中间用逗号隔开
char arr3[] = { 'a','b','c','\0' };
return 0;
}
在每个字符串的末尾都隐藏了一个'\0',利用VS2019中的监视(调试---窗口---监视)功能可以看出
当一个字符串真正遇到'\0'的时候,才认为这个字符串结束了;如下段代码的显示效果
#define _CRT_SECURE_NO_WARNINGS 1
#include "stdio.h"
int main()
{
char arr1[] = "abc";//直接用" "引起来
char arr2[] = { 'a','b','c' };//字符用{}括起来,中间用逗号隔开
char arr3[] = { 'a','b','c','\0' };
printf("%s\n", arr1);//打印字符串用%s
printf("%s\n", arr2);
printf("%s\n", arr3);
return 0;
}
注意:在计算字符串长度的时候'\0'是结束标志,不算作字符串的内容。
strlen( )函数是一个库函数,用来求字符串长度,统计的是字符串中'\0'之前的字符个数
我们可以利用strlen( )函数计算字符串的长度;如下段代码效果
'\0'之前的字符个数就是该字符串的长度,而arr2[ ]没有'\0',所以他的长度是随机的
注意:使用strlen( )函数的时候,需要头文件 #include "string.h"
这里我们解释一下'\\',他的效果是在屏幕上输出一个 "\";如下图代码效果这里我们很明显能感受到,需要打印出"\",就得使用'\\'转义字符
\xhh:
\x后面跟两位十六进制数,该两位十六进制数的值即为对应字符的十六进制ASCII码值。
\ddd:
斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制ASCII码值。
为了方便看懂代码,给代码的一段说明性文字;在编写C语言源代码时,应该多使用注释,这样有助于对代码的理解。在C语言中有两种注释方式:
/*
开始、以*/
结束的块注释(block comment);//
开始、以换行符结束的单行注释(line comment)。在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码
ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号,以及在美式英语中使用的特殊控制字符
有人将 ASCII 编码分成两部分:
ASCII表中可以记下部分特殊的值(字母从A到Z,从a到z,ASCII值依次递增)
‘A’:65
‘a’:97
‘0’(字符0):48
0(数字0):0
由于ASCII表中的大小写字母对应的ASCII值相差32,所以我们在编写大小写转换程序的时候,就非常便捷
大写转小写:ASCII值+32
小写转大写:ASCII值-32