10_函数原型、条件编译与重复定义错误
KeyPoint
函数原型,如果未定义,编译器会猜测为都是int类型
条件编译
#ifndef __FUNC_H__
#define __FUNC_H__double add(const double, const double);
#endif
// 逗你玩的加法,当TRICK被定义时,add()加法会变成乘法// #define TRICK
#ifdef TRICKdouble add(const double a, const double b)
{double res = a * b;printf("operation: %f + %f = %f\r\n", a, b, res);infor("trick func");return res;
}
#elsedouble add(const double a, const double b)
{double res = a + b;printf("operation: %f + %f = %f\r\n", a, b, res);return res;
}
#endif
没有2.中的
#ifndef __FUNC_H__ ... #endif
多次include同一个头文件时会报重复定义错误,FUNC_H
一般取为与头文件名字一致, 在VS中文件头部有一个#pragma once
作用一样
笔记获取
视频教程
阅读原文到B站香辣恐龙蛋
蛋兄本人
精通以下专业单词的拼写
1. 机械设计软件
FreeCAD 开源、免费
UG 工程组织便捷
Solidworks 很多大厂不让用
CATIA 专业
Fusion 360 依赖网络,不推荐
2. PCB硬件开发
STM32CubeIDE 免费,ARM芯片引脚、功能定义、编程
KiCAD 开源免费,原理图、PCB板设计,蛋兄有教程
3. C/S程序开发
WPF/C# MVVM框架开发, 依赖注入工具,计算器, 彩色Log, 10W级曲线画图 蛋兄有教程,卫星地
.NetCore 跨平台开发,UDP通信蛋兄有教程
4. 辅助类软件
Inkscape 画图,开源、免费(我的头像)
Olive 视频剪辑,开源免费、免费,蛋兄有教程
Audacity 音频编辑、降噪,开源、免费,蛋兄有教程
FontForge 字体设计,开源、免费,LoongDigit蛋兄自己设计的字体暂未出教程