本期博客面向初始c语言的同学,无深入的内容,即将步入大学的理工科友友们可以放心冲!!!!
什么是c语言
C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
电脑分为各种硬件和操作系统(windows)以及驱动层,C语言主要操作下层和底层。简单来说C语言是一门和计算机沟通的语言就像是英语汉语语言,以后还会学更多语言比如Java,C++等等。
第一个C语言程序
同学们先跟着我一起操作,代码原理我下面会讲
写第一个c语言前我们先下载一个编译器,相当于翻译软件。
下面是我分享的链接,同学们可以放心食用,没有期限哦。
提取码:qwer
ok我们进入正题
1.点开软件我们会看见这样一个界面,点击创建新项目
2.点击后会弹出这样一个界面,我们选择空项目,点击下一步
3.输入你项目名称,然后选择项目所在路径(点击三个点的那个按钮就可以自定义),然后创建
4.右击Project2然后鼠标放在添加,然后点击新建项
5.然后显示一个这样的界面,依旧选择C++文件,将下面的名称该为某某.c
为啥这样呢因为vs只能创建C++文件,但C++ 是C语言的超集,兼容C语言,
然后点击添加就行了。
6.然后输入代码就可以点击上方空三角形运行。
#include <stdio.h> int main() { printf("我的第一个C语言程序"); return 0; }
作者从一段最简单的C语言代码开始说起,这段代码的输出是“我的第一个C语言程序”。作者使用的是VS2019编译器。那么我们该如何理解这段代码。首先我们会最先看到最上面的#include,那么它代表着什么意思呢?stdio.h是standa input & output header的缩写,这句话的意思就是引入输入与输出函数,每当输入输出函数被调用时就要对其进行调用。这是因为C语言没有相关的输入输出语句,只能通过库函数进行相关的操作。接下来我们会看到 int main(){return 0;}的一个架构,**它是定义了一个主函数,而主函数是所有程序的入口,一个项目中有且仅有一个主函数,也就代表着只有一个入口,如果在一个项目的其他文件中再次加入主函数,那么程序便会报错,**同时主函数中的返回值是一个整数,因为我们在定义主函数的时候使用的是int。其余的部分则是代码部分。
数据类型
char //字符数据类型
short //短整型
int //整形
long //长整型
long long //更长的整形
float //单精度浮点数
double //双精度浮点数
//C语言有没有字符串类型?
1.首先为什么会有这些数据类型,我们生活当中有各种各样的量度,而数据类型就是计算机语言的量度,他可以更加的具象化
#include <stdio.h> int main() { printf("%d\n", sizeof(char)); printf("%d\n", sizeof(short)); printf("%d\n", sizeof(int)); printf("%d\n", sizeof(long)); printf("%d\n", sizeof(long long)); printf("%d\n", sizeof(float)); printf("%d\n", sizeof(double)); printf("%d\n", sizeof(long double)); return 0; }
2.每一种数据类型在内存中大小都不一样
运行以上代码就能够知道每一种数据类型大小
在不同的系统上,这些类型占据的字节长度是不同的:
在32 位的系统上
short 占据的内存大小是2 个byte;
int占据的内存大小是4 个byte;
long占据的内存大小是4 个byte;
float占据的内存大小是4 个byte;
double占据的内存大小是8 个byte;
char占据的内存大小是1 个byte。
变量,常量
生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)
有些值是可变的(比如:年龄,体重,薪资)。
1. 变量的命名
只能由字母(包括大写和小写)、数字和下划线( _ )组成。
不能以数字开头。
长度不能超过63个字符。
变量名中区分大小写的。
变量名不能使用关键字。
2.定义变量方法以及变量使用
c语言中输出的类型格式
1、%d-以十进制形式输出带符号整数;
2、%o-以八进制形式输出无符号整数(不输出前缀O);
3、%x-以十六进制形式输出无符号整数(不输出前缀OX);
4、%u-以十进制形式输出无符号整数;
5、%f-以小数形式输出单、双精度实数;
6、%e-以指数形式输出单、双精度实数;
7、%g-以%f%e中较短的输出宽度输出单、双精度实数;
8、%c-输出单个字符;
#include <stdio.h> int main() { int a = 1; double b = 1.0; float c = 1.0; char d = 'a'; short e = 1; long f = 1; printf("%d %lf %f %c %d %d", a,b,c,d,e,f); return 0; }
3.变量分类
- 全局变量
- 局部变量
#include <stdio.h> int global = 2019;//全局变量 int main() { int local = 2018;//局部变量 //下面定义的global会不会有问题? int global = 2020;//局部变量 printf("global = %d\n", global); return 0; }
总结:
上面的局部变量global变量的定义其实没有什么问题的!
当局部变量和全局变量同名的时候,局部变量优先使用。
4.变量的作用域和生命周期
- 作用域 作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用
- 的而限定这个名字的可用性的代码范围就是这个名字的作用域。 - 局部变量的作用域是变量所在的局部范围。 - 全局变量的作用域是整个工程。
- 生命周期 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
- ·局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
- ·全局变量的生命周期是:整个程序的生命周期。
5.常量
(我将用我自己的理解通俗讲解如果大家觉得不准确可以自行百度,搜索最精确的解释)
- 字面常量
就是一串数据
- const 修饰的常变量
具有常量属性的变量
- #define 定义的标识符常量
就是相当于一个数字赋予一个名字
- 枚举常量
系统会初始化他的大小从1开始依次递增1,如果自定义一个大小后面没自定义的大小依旧按照递增1的规则往下
#include <stdio.h> //举例 enum Sex { MALE, FEMALE, SECRET }; //括号中的MALE,FEMALE,SECRET是枚举常量 int main() { //字面常量演示 3.14;//字面常量 1000;//字面常量 //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; }