本次学习的是分集7-11
课程来自BV1Vm4y1r7jY
分集7
C语言中的常量有以下四种:
1.字面常量
2.const修饰的常变量
3.#define定义的标识符常量
4.enum中的枚举常量
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#define MAX 1000 //#define定义的标识符常量
#define STR "123abcccc" //#define定义的标识符常量
enum Sex{
MALE, //枚举常量
FEMALE, //枚举常量
SECRECT //枚举常量
};
int main() {
3.14; //字面常量
'a'; //字面常量,请注意必须要有单引号
const int n = 3; //定义一个常变量 本质上就是一个变量
//int arr[n]={0}; //中括号中的一定要是常量,如果这样写的话是编译不通过的,因为常变量本质就是变量。
enum Sex c = MALE;
}
分集8
1.字符与字符串
由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串。C中没有字符串类型。
char arr[10] = "abcdef"; //用字符数组来存储。当中括号的值缺省的时候,将自动根据后面值的规模进行创建。
2.字符串的结束标志
字符串的结束标志是一个‘\0’的转义字符。在计算字符串长度的时候‘\0’是结束标志,不算作字符串内容。


上图为调试功能:调试-逐语句。在下方添加监视的对象,再按F10进行逐条的运行。

arr1的结构为:a b c d e f \0
arr2的结构为:a b c d e f ........ 他的结尾并没有'\0'的存在
所以在打印的时候会一直向后读,直到读取到'\0'
而在arr3中手动添加结束符,就避免了这种现象。
strlen()函数使用前,需要#include <string.h>。他的工作原理就是计算字符串的长度,以'\0'为计算的终点。'\0'不算长度。
分集9

以上是一些常用的转义字符。一下对几个进行说明。
1. \? 在较老的版本中,编译器会把三字母词转变为一个字符,但现在一般都不存在了。
2. \ddd ddd表示1-3个八进制的数字。请注意:d必须是0-7范围内。
3. \xdd dd表示2个十六进制的数字。
printf("%d",'\130'); 原理:(130)8---->(88)10 这里输出的就是88。如果用%c,那么输出的就是X。
请注意:后面是用单引号引起来的,说明这是一个字符!也就是说,转义字符其实只占一个字符。
问:"c:\test\628\test.c"占几个字符?

其实是14个字符。紫色的都标为转义符。为什么'\628’不是转义字符呢?因为8不在八进制内。
分集10
/* */为C风格的注释,不支持注释嵌套。
//为C++风格的注释。
Nowasiki.