初始C语言(上)

本文介绍了C语言的基础知识,包括什么是C语言、数据类型(字符、整型、浮点型)、变量与常量(定义、分类、作用域和生命周期)、字符串处理、选择语句及简单循环。通过实例演示了如何编写第一个C程序和使用基本数据类型。
摘要由CSDN通过智能技术生成

目录

一.初始C语言

1.什么是C语言

2.第一个C语言程序

 二.数据类型

1.字符型

2.整形

3.浮点型

 三.变量、常量

1.变量

(1)变量的定义

 (2)变量的分类

 (3)变量的作用域和生命周期

2.常量

(1)字面常量

(2)const修饰的常变量

(3)#define定义的标识符常量

 四.字符串+转义字符+注释

1.字符串

 2.转义字符

 3.注释

五.选择语句

六.循环语句

 七.函数

结语


【声明】:初始C语言部分就是简单介绍一下C语言的大体知识,所有知识点都是点到为止,后面博文中笔者会详细介绍。

【前言】

C 生万物
编程之本
长远 IT 职业发展的首选
C 语言是母体语言,是人机交互接近底层的桥梁
学会 C/C++ ,相当于掌握技术核心
知识点一竿子打通。
IT 行业,一般每 10 年就有一次变革
近 50 年间,在 TIOBE 排行榜中, C/C++ 位置长期霸占前三名,没有丝毫撼动,可谓经典永不过 时!


一.初始C语言

1.什么是C语言

C语言是一门面向过程的计算机编程语言,广泛应用于底层开发。与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%-20%。因此,C语言可以编写系统软件。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

主要特点

(1)简洁的语言

(2)具有结构化的控制语句

(3)丰富的数据类型

(4)丰富的运算符

(5)可对物理地址进行直接操作

(6)代码具有较好的可移植性

(7)可生成高质量、目标代码执行效率高的程序

缺点

  1. C语言的缺点主要表现为数据的封装性弱,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。
  2. C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。

2.第一个C语言程序

工欲善其事,必先利其器:在编写代码之前首先要安装一个编译器,在这里博主推荐大家使用Visual Studio 2019编译器,

下面是安装Visual Studio 2019的教程:

VS2019的安装和简单使用-visual studio 2019 安装教程_哔哩哔哩_bilibili

教程的UP主是博主C语言的启蒙老师,对学习C语言有迷茫的同学,强烈建议大家看他B站上面的视频学习C语言,博主认为他讲解的C语言是B站讲解的最好。

在安装完编译器后我们就要开始编写第一个代码啦

 二.数据类型

  • char //字符数据类型
  • short //短整型
  • int //整型
  • long //长整型
  • long long //更长的整形
  • float //单精度浮点数
  • double //双精度浮点数

1.字符型

字符型数据(char)是用来存储字符的。系统在表示一个字符型数据时,并不是将字符本身的形状存入内存,大家都知道电脑中的数据都是以二进制的方式存储的,所以是以ASCII码的方式将字符存入内存,字符型数据在内存中占一个字节空间。

2.整形

整形数据就是数学中的整数(short,int、long、longlong)

3.浮点型

浮点型数据是含有小数的数据(float、double)

 三.变量、常量

1.变量

(1)变量的定义

 (2)变量的分类

  • 全局变量(在函数外部定义的变量)
  • 局部变量(在代码块中定义的变量)

注意:当局部变量和全局变量同名的时候,局部变量优先使用。

所以,局部变量和全局变量最好不要重名。

 (3)变量的作用域和生命周期

作用域:程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效可用的。而限制这个名字的可用性的代码范围就是这个名字的作用域。

 局部变量的作用域是局部变量所在的局部范围;

 全局变量的作用域是整个工程。

 生命周期:变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。  

局部变量的生命周期:  进入局部变量所在的范围(作用域)生命周期开始,出作用于生命周期结束;

 全局变量的生命周期:  整个程序的生命周期,也就是main函数的生命周期。

2.常量

程序运行的过程中,值不能改变的量称为常量。

C语言的常量主要有以下几种:

  • 字面常量
  • const修饰的常变量
  • #define定义的标识符常量
  • 枚举常量

(1)字面常量

a.整型常量:如10,100 等

b.浮点型常量:如3.14,2.00 等

c.字符常量:用单引号括起来的一个字符称为字符常量。字符常量的值是该字符的ASCII码。字符常量只能是单个字符。请注意在这里’5‘和5是不同的,’5‘是字符常量,5则是整形常量。

d.字符串常量:用双引号括起来的0个或多个字符称为字符串常量,如”abc” 、“china”

(2)const修饰的常变量

在定义变量是,如果加上关键字const(c语言中自带的关键字),则该变量的值无法被改变,这种变量被称为常变量。在编写程序的过程中,当我们不希望一个变量的值被改变的时候,就可以使用const“保护”起来。

注意:上面例子上的pai被称为const修饰的常变量,const修饰的常变量在C语言中只是在语法层面限制了变量pai不能直接被改变,但是pai本质上还是一个变量,所以才叫做常变量。

(3)#define定义的标识符常量

 (4)枚举常量

在这里不做重点介绍,只做展示

 四.字符串+转义字符+注释

1.字符串

在上文介绍常量时简单的介绍了下字符串,在这里重点说明一下

首先先让我们看一段代码

 大家可以先思考一下,也可以尝试自己敲一敲

下面我解释一下\0是什么

字符串的结束标志是一个\0的转义字符,在计算字符串长度的时候\0是结束标志,不算作字符串内容。

arr1这种形式是会在结尾自动补’\0‘,arr2缺少’\0' 程序不知道字符串在哪里结束,会出现乱码。

 补充介绍一下strlen():strlen()C语言自带的库函数,由于计算字符串长度,在使用strlen()在求字符串长度的时候,只算'\0'之前的部分。(在使用strlen前需要引头文件strinng.h)

 2.转义字符

假如我们要在屏幕上打印一个目录:c:\code\test.c

我们该如何写代码呢

 实际上结果是这样的:

这里就不得不提一下转义字符,转义字符顾名思义就是转变意思

请看下面这张图

 大家有时间都可以敲代码试一试

在这里我简单介绍一下: \ddd   、\xhh

举个例子:\130代表将130这个八进制数字转换为十进制数字而后输出其ASCII码所代表的字符。请注意这个数字要小于最大的ASCII码。

 大家可以思考一下上面这段代码的输出结果是多少,在这里答案就不给出了,大家可以先思考一下,再把代码输进编译器中,看看屏幕上输出的和你想的是不是一致的。

 3.注释

  • 代码中有不需要的可以直接删除,也可以注释掉
  • 代码中有比较难懂的可以加上注释来说明

举个例子

很显然,注释有两种风格:

  • C语言风格的注释:/* ... */

缺陷:不能嵌套注释

  • C++风格的注释: //...

C++风格的注释好处是可以注释一行,也可以注释多行。

所以在这里就不用说了,这里当然建议铁汁们用C++风格的注释。

五.选择语句

什么是选择

如果好好学习,就能找到好工作

如果不好好学习,就只能到工地搬砖

这就是选择!

 

六.循环语句

有一些事需要我们循环往复的去做,比如我们日复一日的学习,这就需要有循环语句。

那么在C语言中是如何做到循环的呢?

  • while语句(简单介绍)
  • for语句(以后介绍)
  • do...while语句(以后介绍)

 七.函数 

上面我们说到了main函数,也就是主函数,一个工程中,主函数有且只有一个。

我们都知道数学中的函数,而在C语言中,函数又是什么呢?

在C语言中会把一些独立的功能封装成一个个函数,供使用者调用。

比如我们要写一段代码实现加法运算,而在之后的程序中要重复多次的运用加法,这时就可以使用函数来实现,避免程序冗余。

 函数的特点就是简化代码,方便代码复用,即如果需要,直接调用即可 。

结语

初始C语言部分暂时先介绍到这里,后面还有部分内内容正在整理...

感觉笔者写的还可以,或者自己有些许收获的时候,麻烦小友铁汁们动动小手,给俺来个一键三连,万分感谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

theonly_Love

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值