1.c语言——注释,编译环境,字符

C语言入门概念以及易错点

1.注释

注释分为两种:行注释,块注释

行注释://字面意思可以看出这个行注释就是注释一行

块注释:/* 注释内容 */ 就是注释多行或者单行

注意点:

1.注释不会参加编译,编译时会被空格代替

2.注释不能被嵌套!!!也就是说第一个 / * 符号和第一个*/ 之间的内容都被当作是注释,不管其中还有多少个 / *

思考:

  1. /* /* /*23423/*52 */ //35238 * /
  2. /*1241//2234// / *// * /
int x=1;/***********
int x1=2;
int x2=4;
******************/ 

如果自己能不用电脑看出哪些是没有被注释的,那么基本上就掌握了注释

2编译环境和过程

环境
在ANSIC的任何一种实现中,存在两种不同的环境

1.编译环境:源代码转化为可执行的机器指令
2.执行环境:用于执行代码

两种环境并不一定位于一台机器上

1.交叉编译器两种就是位于一台机器上
2.独立环境,就是不存在操作系统的环境,简单理解为,两种环境是分开的,比如说微波炉控制器就是这些环境(嵌入式比较多)

编译过程

整体步骤
我们知道我们写的代码都是我们能看懂的代码,但是机器并不能看懂,所以我们需要将每个源文件通过编译过程转化为机器能看懂的代码(目标代码),如果有多个源代码,那么我们编译后会产生多个目标代码,所以我们需要把他们捆绑在一起,这个时候发挥作用的就是链接器起的作用,从而形成单一而完整的可执行程序,在捆绑的阶段,系统和个人的函数库才会被链接到这个程序中。

1.c语言——注释,编译环境,字符_第1张图片

其实编译过程也分为很多的阶段

预处理器处理(#define,进行简单的替换,以及读入#include指令包含的文件内容)——>源代码经过解析,判断源代码意思(这个阶段一般产生大多数警告和错误)——>产生目标代码(目标代码是机器指令的初步形式)——>(如果有需要我们可以添加优化器,让他的效率更高)

至于目标代码是直接产生的,还是先以汇编语句形式纯在,然后再经过一个独立的编译阶段来产生目标文件,以及编译还有更加具体的过程暂时不讨论。

3.字符

1.问题:如何在一个字符串常量中包含一个双引号?

"hello"这是一个字符串常量输出是hello,但是我想要输出hell"o怎么办

错误写法:
在这里插入图片描述

正确写法:
在这里插入图片描述

2.又或者我们需要单独输出\

错误写法:
在这里插入图片描述

正确写法:

在这里插入图片描述
这里就要引出转义字符这个东西,来表示不能直接表示的东西,就像上面的"和\一样,那么如果我们的的符号没有特殊含义,比如说:\q,会输出什么?会输出q

总结:在c语言中“ +字符 ”是一般的格式,因为向,"等等符号无法正常输出,如果这个组合有特殊含义,那么就是特殊含义代表的意思,比如\n是换行。
1.c语言——注释,编译环境,字符_第2张图片
单独说说:\ddd

举个例子

\101:先把101转化为十进制对应的数字65,再看\65对应字符A,那么如果输出\101,就会输出A

在这里插入图片描述
这个地方:65对应八进制为53,53对应的ascii码是5
在这里插入图片描述

注意:如果值的大小超过了表示字符的范围,其结果就是未定义

4.标识符

也可以叫做关键字,int,char ,auto…不能被当作变量名使用

如果有兴趣可以去百度一下三字母词,这里不展开讨论

你可能感兴趣的:(c语言期末复习,c语言)