目录
从零开始学习C语言。
一、什么是C语言
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
二、第一个C语言程序
(1)创建项目
打开VS,创建一个新项目
找到空项目
编辑信息
注意:.c为后缀代表以C语言语法来编译代码,.cpp代表以C++的语法来进行编译
(2)接下来我们就可以进行代码的编写了,下面是一个简单的代码编写及运行结果:
对以上代码的解释:
#include<stdio.h> //编译预处理指令
int main( ) //定义主函数
{ //函数开始
printf(“Hello World!\n”); //实现了对信息“Hello World”的打印。
return 0; //返回一个值,终止 main() 函数,并返回值 0
}
需要注意的地方:
main()后面的括号()不能省
printf和return语句最后都要写上分号;
除引号“ ”内的内容,都要在英文状态下编写(包括换行符 \n)
三、数据类型
字符型:
char //字符数据类型
整型:
short //短整型
int //整形
long //长整型
long long //更长的整形
浮点型:
float //单精度浮点数
double //双精度浮点数
每种类型的大小:
sizeof是计算变量在内存的占空间的大小,单位是字节
这里顺便给出字节(Byte)与位(bit)等的关系,方便大家理解:
1字节(Byte)=8位(bit)
1 KB = 1024 B = 2^10 B
1 MB = 1024 KB = 2^20 B
1 GB = 1024 MB = 2^30 B
1 TB = 1024 GB = 2^40 B
四、变量,常量
不变的值,C语言中用常量的概念来表示,变化的值C语言中用变量来表示。
示例:
变量
1)变量的命名
*只能由字母、数字、下划线组成
*数字不能作为开头
*不能使用关键字
*区分大小写
*长度不能超过63个字符
2)变量的分类
变量分为全局变量和局部变量
怎么判断全局变量和局部变量:
在函数外部定义的是全局变量(这里的函数包括main函数)
在头文件中定义的是全局变量
在函数或语句块内部定义的是局部变量
函数的参数是该函数的局部变量
比如上方的整型变量a,它在{ }的外部,所以是全局变量;
整型变量b,它在{ }的内部,所以是局部变量。
注意:
在同一个范围内,同一个变量不能重复定义多次
变量遵循局部优先,即当全局变量和局部变量名字相同的情况下,局部优先。因此,尽量不要用相同的名字
3)变量的使用
注意:
这里引用了scanf函数,作用是等待从键盘上输入,将从键盘输入的字符转化为“输入控制符”所规定格式的数据,然后存入以输入参数的值为地址的变量中。
&为地址符,可以引用相应变量的地址,地址即为存放数据的位置。
“%d %d”输入的两个字符用空格隔开,也可用Tab或Enter隔开;若为( ,)则用逗号隔开。
4)变量的作用域及“生命周期”
作用域:
限定这个名字的可用性的代码范围就是这个名字的作用域。即哪里能用,作用域就是哪里。
下面举个例子:
如上图所示,两个名字相同的变量,但是作用域并不同。
红色矩形内的变量a的作用域在红色椭圆所示的{ }范围内;而蓝色矩形内的变量a的作用域在蓝色椭圆所示的{ }范围内。并且遵循局部优先
此外,还可以利用extern引用外部变量,引用的变量来自其他的文件。
综上:
1.局部变量的作用域是变量所在的局部范围。
2.全局变量的作用域是整个工程。
生命周期:
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
局部变量的生命周期:进入作用域 生命周期开始,出作用域 生命周期结束。
全局变量的生命周期:整个程序。
常量
常量的分类
1.字面常量
直观的可以看出的量,比如:
20,3.14,‘c’,“abc”
2.const 修饰的常变量
当我们不希望某一个变量被更改时,可以在变量语句的前面加上const
此时整型变量a就无法从100改为10了。而const修饰的a,本质是变量,但是不能直接被修改,有常量的属性。
特别注意:此时const修饰的a任然是变量,不能用在数组的[ ]中,即不能写成arr[a]。
3.#define 定义的标识符常量
此时的MAX就是一个由#define定义的标识符常量,含有一个固定值100
4.枚举常量
可以一一列举出来的
比如三原色红绿蓝
枚举常量的默认值是从0,1,2以此递增的,因此这里打印出来的值为0,1,2
五、字符串,转义字符,注释
字符串
我们用单引号’ ‘存下一个字符,若我们要存入一