导语
本篇博客中包含了大量的C语言基础知识,可能不太全面,但无论大家用于预习或复习,都会具备较为不错的参考价值。
01. C语言与其他计算机语言的对比: C语言广泛的应用于底层开发,区别于应用开发(操作系统与软件间的开发,比如C++、Java等),C语言更擅长做操作系统与电脑之间(驱动层)的工作; C语言是面向过程的语言;C++、Java是面向对象的编程语言;
02. ASCII码表:ASCII码对照表
03.主函数 我的第一个C语言代码,写代码先从主函数开始 先写一个 main() 函数
//主函数-程序的入口,所以规定 main 函数有且仅有一个
int main() //返回 int 整型
{
return 0; //返回 0,表示正确返回,返回其他非零的数时,仅表示此处异常返回,无影响
}
注意:main() 函数的正确声明方法
错误或者一些过时的声明方法:
void main() { } //符合C语言,但这种形式已经弱化了
main() { } //胡写,这些写法可能在某些编译器上是正确的,但它不符合C语言代码的规范
其他函数: 打印函数 printf("") 用于打印、格式化输出 代码暂停 system("pause"); 用于执行一个系统命令 -- pause -- 暂停 窗口清屏 system("cls"); 用于执行一个系统命令 -- cls -- 清屏 睡眠函数 Sleep() 界面切换间停留一段时间,括号内是睡眠时长,单位:毫秒 ·······等等,暂不一一列举了,之后会单独写一篇博客来聊一聊这些常用函数的概念
对应例题练习 打印输出:hello world
//使用 printf() 函数需提前声明引用头文件 <stdio.h>
//使用 system("") 函数需提前声明引用头文件 <stdlib.h>
//使用 Sleep() 函数需提前声明引用头文件 <windows.h>
#include <stdio.h> //标准输入输出头文件
#include <stdlib.h>
#include <windows.h>
int main()
{
//打印函数-输出函数-库函数,使用库函数要引用头文件
printf("hello world\n"); //打印 hello world,换行
Sleep(1000); //清屏前,先让界面停留1000毫秒(即 1 秒)
system("cls"); //清屏
printf("hello world\n"); //再打印一遍 hello world,换行
system("pause"); //代码暂停
return 0;
}
程序执行的太快,输出完之后,程序一瞬间就结束了,编译窗口一闪而过,所以我们要在结束之前让代码暂停,
观察当前在屏幕上打印了什么----->调用函数 system("pause")----->头文件:#include <stdlib.h>
system()函数,系统命令:
system("cls") //清空窗口
system("pause") //暂停窗口
system("shutdown") //60秒倒计时关机命令
让屏幕休眠一秒:调用Sleep(1000)函数——1000表示1000毫秒,--->对应的头文件:#include <windows.h>
数据类型:
char //字符数据类型
short //短整型
int //整型
long //长整型
long long //更长的整型
float //单精度浮点数
double //双精度浮点数
//C语言有没有字符串类型?
//答:没有,C语言两种类型(整型、浮点型);char——整型,存的是它的ASC码值
//为什么出现这么多的类型?每种类型是多大
//答:创建不同类型的变量;用下面的代码来演示每种类型的大小
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("%d\n", sizeof(char)); //1个字节
printf("%d\n", sizeof(short)); //2个字节
printf("%d\n", sizeof(int)); //4个字节
printf("%d\n", sizeof(long)); //4个字节
printf("%d\n", sizeof(long long)); //8个字节
printf("%d\n", sizeof(float)); //4个字节
printf("%d\n", sizeof(double)); //8个字节
system("pause");
return 0;
}
输出结果:
注释:
sizeof()函数
一种内存容量度量函数,功能是返回一个变量或者类型的大小(以字节为单位)
在C语言中,sizeof()是一个判断数据类型或者表达式长度的运算符~
bit --> 比特位
byte --> 字节
-->kb --> mb --> gb --> tb --> pb (单位换算:1024)
说起1024,难免想到有很多程序员的梗,你懂的☺☺☺
话不多说,咱们继续
04. 常量和变量 不变的值C语言中用常量的概念表示;变的值C语言中用变量的概念来表示; a. 变量 定义变量类型 变量名 = 变量初值;
变量又分为:全局变量和局部变量
int a = 0; //全局变量
int main()
{
int a = 20; //局部变量
printf("%d\n", a);
return 0;
}
输出结果:
原因:当局部变量与全局变量冲突时,局部变量优先;
变量的使用 输出结果:
变量的作用域和生命周期: 作用域(scope),程序设计概念, 一般来说,一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。 注释: 1.局部变量的作用域是变量所在的局部范围 -----> { 代码块 }; 2.全局变量的生命周期是整个工程。 输出结果:
全局变量的作用域 在同一工程的源文件下再添加新的 .c 文件(例 add.c),在原来的 .c 文件(例 text.c)中声明一个全局变量(例 g_val),通过关键字extern实现全局变量在工程内的随意调用; 输出结果: 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段 注释: 1.局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束; 2.全局变量的生命周期是:整个程序的生命周期。
b. 常量 C语言中的常量分为以下几种:
- 字面常量
- const修饰的常变量
- #define定义的标识符常量
- 枚举常量
字面常量 ** const修饰的常变量** #define定义的标识符常量 枚举常量