C语言基础

发布于 2022-05-06  190 次阅读


C语言程序生成过程

C语言是一种编译语言,与其对应的是解释型语言

.c文件会通过编译器生成目标文件.obj文件

其通过编译器后就变成了CPU可识别的程序

但是这个程序目前只包含源文件,但是不包含其他程序

比如打印函数print,但是在C中这样的函数不是本身自有的,而是库中的

.obj文件不包含这些功能的实现,如果需要用到,需要将库的代码以及启动代码通过连接器连接进来

生成一个可执行程序.exe

编译方式

静态编译和动态编译

动态编译:依赖于runtime(运行时),启用动态编译后,可执行程序中不包含库实体,它会在本机寻找这些库

静态编译:不依赖操作系统自带的库,直接独立运行

进制和位

常用进制:2进制,8进制,10进制,16进制

2:0 1

8: 0 1 2 3 4 5 6 7

10:0 1 2 3 4 5 6 7 8 9

16:0 1 2 3 4 5 6 7 8 9 A B C D E F 10(16位是10)

文件介绍

编写的程序生成了三个文件

.exe .pdb .ilk

.exe是可执行程序
.pdb是符号文件,这个是换到其他机器上依旧可以看到代码符号

头文件

.h文件

.h是c语言的头文件,一般在里面放入的是函数声明,宏定义,函数原型,具体实现的代码在.cpp文件里面

C语言命名规则

可以用字母,下划线,数字命名,但是数字不能开头

简单的库编写

在遇到重复需要利用的函数方法时,我们只需要写一次,然后将其创建头文件,即可随时调用

先include包含自己的头文件

我们这里写一个加法运算方法,定义一个int类型,方法名为AddNumber,里面两个形式参数Num1,Num2

这里做一个加法运算,result用来接收Num1+Num2,然后return result结果给AddNumber

然后右键代码,将其快速创建头文件

这里的#pragma once 是一个预处理,避免文件重复包含头部,这个处理保证重复包含只处理一次

这里快速创建头文件后,其他.c文件可以快速调用这个方法

这里调用了AddNumber,并将形式参数赋值,然后赋值给addNu

然后打印出结果

结果为3

代码调试常用按键

F5 运行代码

F9 下断点

F10 单步步过

F11 单步步入