认识C语言 Day_3 >字符、字符串

目录

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 大小写转换小妙招


1.字符串

C语言中有字符(char)类型,但是没有字符串类型;那么在C语言在如何表示字符串呢

1.1 字符串的表示

"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;
}

1.2 字符串的结束标志

在每个字符串的末尾都隐藏了一个'\0',利用VS2019中的监视(调试---窗口---监视)功能可以看出认识C语言 Day_3 >字符、字符串_第1张图片
当一个字符串真正遇到'\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;
}

认识C语言 Day_3 >字符、字符串_第2张图片

1.3 字符串的长度

注意:在计算字符串长度的时候'\0'是结束标志,不算作字符串的内容。 
strlen( )函数是一个库函数,用来求字符串长度,统计的是字符串中'\0'之前的字符个数
我们可以利用strlen( )函数计算字符串的长度;如下段代码效果

认识C语言 Day_3 >字符、字符串_第3张图片
'\0'之前的字符个数就是该字符串的长度,而arr2[ ]没有'\0',所以他的长度是随机的 
注意:使用strlen( )函数的时候,需要头文件 #include "string.h"

2.转义字符

2.1 常用转义字符

认识C语言 Day_3 >字符、字符串_第4张图片

这里我们解释一下'\\',他的效果是在屏幕上输出一个 "\";如下图代码效果
认识C语言 Day_3 >字符、字符串_第5张图片这里我们很明显能感受到,需要打印出"\",就得使用'\\'转义字符

 2.2 特殊转义字符

认识C语言 Day_3 >字符、字符串_第6张图片

 \xhh:

\x后面跟两位十六进制数,该两位十六进制数的值即为对应字符的十六进制ASCII码值

\ddd:

斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制ASCII码值

872da0d16b684edbae9ebff7f0e07a83.png

2.3 转义字符的大小

一个转义字符就算作一个字符,因此一个转义字符的长度为1 
认识C语言 Day_3 >字符、字符串_第7张图片

3.注释

3.1 什么是注释

为了方便看懂代码,给代码的一段说明性文字;在编写C语言源代码时,应该多使用注释,这样有助于对代码的理解。在C语言中有两种注释方式:

  • 一种是以/*开始、以*/结束的块注释(block comment);
  • 另一种是以//开始、以换行符结束的单行注释(line comment)。

3.2 注释原则

  • 项目开发中,尽量保持代码注释规范和统一。
  • 注释方便了代码的阅读和维护。
  • 边写代码边注释,修改代码时要相应修改注释,保证注释和代码的一致性。
  • 注释要简洁明确,不要出现形容词。
  • 通过注释可以快速知道所写函数的功能,返回值,参数的使用。

4.ASCII表
认识C语言 Day_3 >字符、字符串_第8张图片

4.1 ASCII值

4.1.1产生原因

在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码

4.1.2表达方式

ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号,以及在美式英语中使用的特殊控制字符

  • 0~31及127(共33个)是控制字符或通信专用字符(即不可打印字符)(其余为可显示字符)
  • 32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字
  • 65~90为26个大写英文字母
  • 97~122号为26个小写英文字母
  • 其余为一些标点符号、运算符号等
  • 后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号 

有人将 ASCII 编码分成两部分:

  • 前 128 个字符称为基本 ASCII,包含常见字符;
  • 后 128 个字符称为扩展 ASCII,包含一些特殊字符。

4.2 特殊的ASCII值 

ASCII表中可以记下部分特殊的值(字母从A到Z,从a到z,ASCII值依次递增)
‘A’:65
‘a’:97
‘0’(字符0):48 
0(数字0):0

4.3 大小写转换小妙招

由于ASCII表中的大小写字母对应的ASCII值相差32,所以我们在编写大小写转换程序的时候,就非常便捷

大写转小写:ASCII值+32
小写转大写:ASCII值-32

你可能感兴趣的:(#,初始C语言,c语言,c++,开发语言)