我有一个遗留C函数,它使用结构定义如下
struct{
float _schedulerRate;
}sched_;
#define sched_1 sched_;
// bla bla bla
myFunc(bla bla bla) {
// Lots of bla bla bla
someVar = some_complicated_equation/sched_1._schedulerRate;
// More bla bla bla
}
此函数甚至不接受以某种方式分配给sched_1._schedulerRate
元素的任何参数。我也知道我无法使用extern
定义结构,因为这种链接确实支持sturct定义。
问题在于,当我对其进行单元测试时,我必须为此sched_1._scheduerRate
设置一个值。我怎样才能做到这一点?这是一个成功运行的遗留代码,但我正在尝试将其中一个模块集成到一个辅助项目中。
我只有1。5年的C / C ++编程经验,可能就是为什么我不知道一些神奇的技巧。但即使是新手用户的PoV,这对我来说几乎是不可能的。但是,它是遗留代码并且也可以工作!我怎么也不知道。