C语言-初识C语言(2)
3.5常量
在我们学习C语言的过程中,常量以及变量是非常重要的一个知识点。因为程序中出现的常量是要存放在计算机的储存单元中的,要确实它的字节大小,所以常量的类型也是有非常多的。C语言中常量和变量的定义也有所差异。
C语言中常量分为以下几种:
- 字面常量
- const修饰的常变量
- #define定义的标识符常量
- 枚举常量
下面用代码举例
#include //举例enum Sex //定义枚举类型{ MALE, FEMALE, SECRET};//括号中的MALE,FEMALE,SECRET是枚举常量int main(){ //字面常量演示 13.27;//字面常量 999;//字面常量 //const 修饰的常变量 const float pai = 3.14f; //这里的pai是const修饰的常变量 pai = 5.14;//是不能直接修改的! //#define的标识符常量 演示#define MAX 100 printf("max = %d\n", MAX); //枚举常量演示 printf("%d\n", MALE); printf("%d\n", FEMALE); printf("%d\n", SECRET); //注:枚举常量的默认是从0开始,依次向下递增1的 return 0;}
上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了 变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。
4.字符串+转义字符+注释
4.1字符串
“hello word.\n”
这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串。
注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串 内容。
#include int main(){ char arr1[] = "bit"; char arr2[] = { 'b', 'i', 't' }; char arr3[] = { 'b', 'i', 't', '\0' }; printf("%s\n", arr1); printf("%s\n", arr2); printf("%s\n", arr3); return 0;}
运行结果
注:用单引号引用字符来写字符串一定要加“\0”.上面的例子突出“\0”的重要性。
4.2转义字符
假如我们要在屏幕上打印一个字符串:“http\test\x03\n”
#include int main(){ printf("http\test\x03\n"); return 0;}
打印结果:
为什么会出现这种情况呢,这就必须要了解转义字符。
字符集(Character Set)为每个字符分配了唯一的编号,我们不妨将它称为编码值。在C语言中,一个字符除了可以用它的实体(也就是真正的字符)表示,还可以用编码值表示。这种使用编码值来间接地表示字符的方式称为转义字符(Escape Character)。
转义字符以\
或者\x
开头,以\
开头表示后跟八进制形式的编码值,以\x
开头表示后跟十六进制形式的编码值。对于转义字符来说,只能使用八进制或者十六进制。
下面给出转义字符表
那我们要打印出一些特殊字符应该怎么做呢?
int main(){ printf("%c\n",'\''); //打印出一个单引号 printf("%s\n", "\""); //打印出一个字符串,字符串内容为“\"” return 0;}
运行结果为:
小挑战:这个打印结果为什么呢?
printf("%d\n", strlen("c:\test\628\test.c"));
提示:\62被解析成一个转义字符。
5.注释
为什么会有注释呢,说白了,就是让你以后维护或查看程序时候,知道这段代码是干什么用的包括以后就业,企业有注释规范,比如,一段程序百分之10-30都是注释,便于其他人员查看。还有很多规范,命名规范等等。
- 代码中有不需要的代码可以直接删除,也可以注释掉。
- 代码中有些代码比较难懂,可以加一下注释文字。
下面用代码举例
#include int Add(int x, int y){ return x+y;}/*C语言风格注释int Sub(int x, int y){ return x-y;}*/int main(){ //C++注释风格 //int a = 10; //调用Add函数,完成加法 printf("%d\n", Add(1, 2)); return 0;}
注释有两种风格:
- C语言风格的注释 /*xxxxxx*/
缺陷:不能嵌套注释
- C++风格的注释 //xxxxxxx
可以注释单行也可以注释多行
6.选择语句
在C语言中主要使用if–else;和switch case语句
if-else语句
基本形式是:
if(表达式) 语句1
else 语句2
下面用代码举例
#includeint main(){int a;scanf("%d",&a); //输入一个数,如果这个数小于0,打印0;大于等于0,打印1if(a<0)printf("0");elseprintf("1");}
if-else语句的嵌套
下面用代码举例:
#includeint main(){int age = 0;scanf("%d", &age);if (age = 18 && age = 28 && age = 45 && age < 70)printf("老年\n");elseprintf("长寿\n");return 0;}