c - 故意编译失败 - 使用正在进行的项目的源代码

标签 c compilation c-preprocessor

我正在使用正在进行开发并不断变化的项目的源代码。

在特定场景下,我必须更改项目的源以使其适应我自己的需求。

我想创建一个定义(或一组定义)来确保如果我更新了外部项目的源代码,并且我没有再次将我的更改添加到新版本的代码中, 我会编译失败。 换句话说 - 我想保护自己免于忘记编写某些代码

你会如何推荐?

使用 IAR 工作台,为 TI25XX 编译

最佳答案

您可以使用预处理器指令 #ifndef#error:

#ifndef SOMETHING
  #error "Error message!"
#endif

如果未定义SOMETHING,编译将停止并显示“错误消息!”

SOMETHING 究竟是什么必须由您决定。也许它可以是版本号1

#if(CURRENT_VERSION < MINIMUM_VERSION)
  #error "Version out of date!"
#endif

1 indiv 建议.

关于c - 故意编译失败 - 使用正在进行的项目的源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24811970/

相关文章:

c++ - 用于 iOS 的 leptonica 1.69 交叉编译(armv7、armv7s 和 arm64)

c++ - #ifdef 带有多个标记,这合法吗?

c - 错误: '#' is not followed by a macro parameter

c - 查找连接到/dev/input/eventX 的设备的描述

c - 段错误双指针,正确分配(我相信)

c# - 是否有针对c#语言版本的指令

c++ - 如何在(64 位)Windows 上编译 C++ 以生成 64 位 exe?

C: for 循环中的 Scanf 函数比它应该多运行一次

c - SDL2 Mac 文件处理

c++ - 编译命令eclipse c++