1.学c笔记归纳 第二篇——基本数据类型2.学c笔记归纳 第三篇——常量3.学C笔记归纳 第四篇——static关键字(重点)4.学c笔记归纳 第五篇——指针(抽象点)5.学C笔记归纳 第六篇——结构体6.学C笔记归纳 第七篇——分支循环语句17.学C笔记归纳 第八篇——分支循环语句2_switch8.学C笔记归纳 第九篇——分支循环语句3_for_while_do while(附九九乘法表解析和三种方式实现)9.学C笔记归纳 第十篇——循环算法优化10.学C笔记归纳 第十一篇——函数1
11.学C笔记归纳 第十二篇——函数2 声明和定义
12.学C笔记归纳 第十三篇——函数3 递归(重点)13.学C笔记归纳 第十四篇——一维数组14.学C笔记归纳 第十五篇——二维数组函数功能越单一,可移植性越强——“高内聚低耦合”;
函数可以嵌套调用,不可以嵌套定义;
关于函数声明:
告诉编译器函数名、参数、返回类型,但函数具体存在由函数定义决定;
函数声明一般出现在函数使用之前,要满足先声明后使用;
函数声明一般放在头文件中。(单片机常用)
#include <stdio.h>
//函数声明
int add(int x, int y);
int main()
{
int a = 1;
int b = 10;
printf("%d\n", add(a, b));
return 0;
}
//函数定义
int add(int x, int y)
{
return x + y;
}

以add函数为例,一个项目,头文件内创建 .h文件放add函数声明,
源文件内创建两个.c文件,一个放main函数,一个放add函数定义,
在main函数中调用add函数时,在之前“ #include "add.h" ”,便可正常使用add函数。
这样add函数的声明和定义我们将之称为模块 ,使用时包含其头文件即可,自己写的头文件用双引号。
工作中从协作角度需要 模块化编程,每人编写功能模块,拼接成一个项目。
#pragma once 防止头文件被重复包含。
#include "add.h" 就是将头文件里内容全部拷贝,而头文件里是函数声明,包含头文件就相当于函数声明。
这种方法还有商业价值:将add.c、add.h封装成静态库(.lib)售卖,买家难以破解复刻。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了