C语言基础入门

什么是C语言?

C语言是一门通用型编程语言,广泛用于底层开发。我们熟知的操作系统,如windows、Linux、Mac,这些都有C语言的身影。

由来

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制 定了一套完整的美国国家标准语 法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8日,国际标准化组织(ISO)和 国际电工委员会(IEC)发布的C11 标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字 标识符,一定程度上实现了汉 字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

主要的编译器:有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

C语言在计算机中的执行顺序

  • 编辑:通过键盘在各个编辑器中敲代码的过程
  • 预处理:带#的都是预处理指令。
  1. 将源文件中以”include”格式包含的文件复制到编译的源文件中。
  2. 用实际值替换用“#define”定义的字符串。
  3. 根据“#if”后面的条件决定需要编译的代码。
  • 编译:包含汇编和编译。
  1. 汇编:将被预处理的源程序经过如下图的步骤逐步转换为汇编语言。
  2. 编译:在把已经转换好的汇编语言,翻译为机器指令代码的过程。

  • 链接:将所有目标文件链接到一起,组合成一个能被操作系统执行的整体。

 好用的编辑器

推荐visual studio 2019,集成环境,不需要配置任何环境,个人觉得好用。vc6,以及dev,虽然体积小,但是支持的C标准古老,很容易出现各种各样的问题,导致运行报错。

Visual Studio 2019 Community 社区版(免费版)
简体中文版下载地址:Thank you for downloading Visual Studio - Visual Studio

安装步骤(图解):

下载后的vs2019,会有一个可执行文件,双击打开,会弹出如下界面:

在这里插入图片描述

 在这里插入图片描述

 在这里插入图片描述

在这里插入图片描述在这里插入图片描述

数据类型 

 基础数据类型

 构造数据类型:

union(共用体)、struct(结构体)、数组类型、枚举类型(enum)

void类型:作为函数返回类型、形参、指针类型,表示为空

操作符

 三大特性:

  1. 优先级
  2. 结合性 
  3. 是否控制求值顺序 && ||  条件运算符 逗号表达式

分支和循环结构

//单分支
if(条件表达式)
{
    语句块; // 需要执行的语句
}

//双分支
if(条件表达式)
{
    代码块;
}
else
{
    代码块;
}

//多分支 这里可以根据实际添加else if 
if(条件表达式)
{
    代码块;
}
else if(条件表达式)
{
    代码块;
}
else
{
    代码块;
}

//使用情况:知道循环次数
for(初始化变量;条件表达式;循环条件调增)
{
    循环体;
}

//不清楚循环次数
while(条件表达式)
{
    循环体;
}

//一开始会先执行一遍循环体 比如商场游戏机试玩一次
do
{
    循环体;
}while(条件表达式);

//break和continue
break 立即跳出循环
continue 跳出本次循环

//goto语句 适用于多层循环嵌套的跳出

函数

库函数:由各个厂商提供。将一些常用的一些功能,封装成函数,供他人使用

自定义函数:由程序员自己来定义的一些功能函数。

数组

// 声明

数组类型 数组名[];

// 初始化

int arr[] = {0}; // 只会给第一个元素被初始化为0,剩下的元素自动初始化为0

[]内写入的为数组长度,为常量

访问 下标来访问 

arr[下标]

数组名:sizeof()时,是整个数组的长度

            &数组名,整个数组的地址

其余情况都是数组首元素的地址

posted @   LiveH  阅读(307)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示