c语言 桌面程序_「必读」超全的C语言基础知识大全

2af522067aa0a1b537e8e6625d5dd818.png

1.1 C语言概览

C语言凭借其高效率、良好的移植性、功能强大的特性在操作系统、硬件驱动以及系统应用开发占据广阔的市场。

1.1.1 C语言发展简史

488a5468b51e9f2211eacab8b64a724b.png

Dennis Ritchie

  • 起源
  • 1972年,贝尔实验室的Dennis Ritchie和Ken Thompson在开发Unix操作系统时设计了C语言,该操作系统的90%以上的代码都是由C语言实现,后期的Linux,MacOS,Android,IOS都是基于Unix发展而来的。
  • 标准
  • 1987年Dennis Ritchie和Brian Kernighan编写了The C Programming Language第一版是公认的C标准实现,而没有定义C库。
  • 而后期ANSI/ISO先后于1990年、1999年和2011年发布了C90标准、C99标准和C11标准,该标准定义了C语言和C标准库。

1.1.2 C语言特性

C语言作为面向过程的高级程序设计语言,能够轻松的实现自顶向下的规划、结构化编程和模块化设计,这样使得程序结构更加简洁,可扩展性强以及更加容易维护。

而且C语言有着高效(执行速度快)、功能强大(嵌套汇编)以及可移植性(标准库可移植)、功能强大等优点,而且也存在着对系统平台库依赖严重,由于编程风格自由,经验不足也会容易导致出错,编写代码实现周期长,同样的代码在不同的操作系统(或者编译器)下可能会有不同的表现等缺点。

1.1.3 C语言应用场景

C语言偏向操作系统、硬件驱动、底层应用(数据库、编译器)、嵌入式应用开发、游戏引擎等应用场景。

  • 硬件驱动的绝大部分实现是由C语言和汇编语言实现的。
  • 主流操作系统(Unix,Linxu,MacOS,Windows,Android,iOS)的底层实现都是由C语言和部分汇编实现的。
  • C++,Java,Python,Swift的编译器或者解释器都是由C语言实现的。
  • Git,Nginx,Redis,MySQL都是使用C语言实现的,而且都是开放源代码的,可以在GitHub中获取到,可以通过阅读源码提升自己的设计和编码能力。

1.2C语言集成开发环境搭建

目前主流操作系统(Windows,Linux,MacOS)都有完善的C语言集成开发环境,用于编辑、编译、调试、打包部署C程序。

3bfe096bda2e1ec96c10ede42bc3b0cb.png


C语言集成开发环境搭建

Windows作为世界上最流行的桌面操作系统,最新版本为Windows10 1903,VisualStudio作为Windows上最强大的集成开发环境,可以开发Windows软件,游戏,Web应用等等,最新版本为VisualStudio2019 16.2.2。

491e9ed58a2e956a08504983bd637eb1.png

Ubuntu作为最受欢迎的桌面版Linux系统之一,推荐采用跨平台的集成开发环境QT来编写C/C++程序。

40613929707544cc58c03d80ece7a742.png

MacOS平台推荐使用XCode来编写C/C++程序,而且XCode在macOS系统上是自带的,无需额外安装。

e8a22614520310617f1a67503261edb5.png

除此以外还有些跨平台的C/C++ 开发工具,例如来自Jetbrains公司的CLion也可以用来编写C/C++程序。

b05eb7e0471e5be10217e9807ce4f50a.png

关于IDE的安装以及使用,它们的官网都提供了详细的教程,同学们可以自行去查阅。

398dc05c6ebdc7e659d5be13d8454984.png


IDE下载和帮助文档

C语言学习过程中会使用Windows10 1903+Visual Studio 2019作为主力开发工具,如果没有特别的说明,默认的环境就是Windows10 1903和Visual Studio 2019。

5c60414019ac396720ec4c8ae444f664.png

C语言程序的结构认识

我们用一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,加深小伙伴们对C语言的认识。

例1:计算两个整数之和的c程序:

#include

main()

{

int a,b,sum; /*定义变量a,b,sum为整型变量*/

a=20; /*把整数20赋值给整型变量a*/

b=15; /*把整数15赋值给整型变量b*/

sum=a+b; /*把两个数之和赋值给整型变量sum*/

printf(“a=%d,b=%d,sum=%dn”,a,b,sum);

/*把计算结果输出到显示屏上*/

}

重点说明:

1、任何一个c语言程序都必须包括以下格式:

main()

{ }

这是c语言的基本结构,任何一个程序都必须包含这个结构。括号内可以不写任何内容,那么该程序将不执行任何结果。

2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。

3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。

4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。

5、printf(“a=%d,b=%d,sum=%dn”,a,b,sum);----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果:

a=20,b=15,sum=35

6、#include

注意:(1)以#号开头(2)不以分号结尾

这一行没有分号,所以不是语句,在c语言中称之为命令行,或者叫做“预编译处理命令”。

7、程序中以 /*开头并且以*/结尾的部分表示程序的注释部分,注释可以添加在程序的任何位置,为了提高程序的可读性而添加,但计算机在执行主函数内容时完全忽略注释部分,换而言之就是计算机当做注释部分不存在于主函数中。

C程序的生成过程

C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件。

源程序的扩展名为 .c ,目标程序的扩展名为 .obj , 可执行程序的扩展名为.exe 。

标识符

在编写程序时,必须为函数、变量等命名,这个名字称为标识符。C语言中标识符的命名规则如下:

标识符只能由字母、数字、下划线组成;

标识符的第一个字母必须是字母和下划线;

标识符区分大小写字母,如If和if是两个完全不同的标识符。

合法标识符如下:

A6, b_3 , _mn

非法的标识符如下:

ab#12 , 8m , tr3:4 , yes no

标识符不能与程序中具有特殊意义的关键字相同,不能与用户编制的函数名、C语言库函数相同,在程序中各种标识符尽量不要重复,以便区分。选择变量名和其他标识符时,应注意做到 “见名知义”。

标识符分为如下三类:

1、关键字

关键字是具有特定含义的,专门用来说明c语言特定成分的一类标识符,不能用作用户的标识符。

auto

break

case

char

union

do

double

else

enum

extern

goto

if

int

long

short

signed

static

sizof

struct

switch

unsigned

void

for

while

typedef

continue

float

return

typedef

default

2、预定义标识符

预定义标识符在c语言中也有特定的含义,但可以用作用户标识符,预定义标识符分为两类:

(1)、库函数名字,比如(printf,scanf,sin,isdigit等)

(2)、编译处理命令名,比如(define,include)

3、用户标识符

用户根据需要自己定义的标识符称为用户标识符。无论如何自定义标识符,都必须符合标识符的三条命名规则。

常量

在程序运行中,其值不能被改变的量称为常量。常量有5种类型:整型常量、实型常量、字符常量、字符串常量和符号常量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值