探索篇 | C语言基础归纳 No.1
导语
本篇博客中包含了大量的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定义的标识符常量
枚举常量
- 一位牛人归纳的JavaScript 语言基础知识点图示(下)
- 一位牛人归纳的JavaScript 语言基础知识点图示
- 使用Code First建模自引用关系笔记 asp.net core上使用redis探索(1) asp.net mvc控制器激活全分析 语言入门必学的基础知识你还记得么? 反射
- Java语言基础细节归纳
- F#程序设计-F#语言基础之核心类型(2)
- C语言基础_7
- 黑马程序员——Java语言基础:多线程
- T-SQL 语言基础(四)—— 常量与变量
- Java学习笔记-2.Java语言基础
- 黑马程序员——Java语言基础:集合框架(Collection、Map,工具类Collections、Arrays)
- c#语言基础
- 黑马程序员- java语言基础组成
- Linux-C基础知识学习:C语言作业-输入两个数,将两个数交换,按升序输出。
- 智能合约基础语言(四)——Solidity函数
- [BX]和loop指令05 - 零基础入门学习汇编语言27
- C-(001-006).C语言基础总结
- Go语言基础
- 基础快速过 之C语言 二:什么是关键字 标识符 系统保留字 变量和常量[各个语言通用]
- java语言基础day02(变量,进制,数据类型,字符和字符串参与的运算,运算符)
- [BX]和loop指令06 - 零基础入门学习汇编语言28