因此,我正在研究固件的“快速和脏”分析器 - 我只需要知道某些函数需要多长时间。仅仅打印每次所花费的时间会使结果偏离,因为日志记录很昂贵 - 所以我将一堆结果保存到一个数组并在一段时间后抛弃。直接从其他人访问一个编译单元的静态变量C
当在一个编译单元(一个源文件)中工作时,我只是有一堆存储结果的静态数组。现在我需要在多个文件中执行此操作。我可以“复制粘贴”代码,但那只会是丑陋的(与我一起)。如果我把时间代码放在一个单独的编译单元中,创建静态变量,并在头文件中提供存取函数,那么每次我想访问这些静态变量时,我都会招致函数调用的开销。
是否可以直接访问编译单元的静态变量?
我一直试图封装数据,而不是使用全局变量,但这种情况只是由于速度问题。
我希望这是有道理的!谢谢!
编辑:好了,所以才出现,我问什么是impossible-做任何你看到的替代品,基本上让我直接访问另一个编译单元的数据?
编辑2:谢谢你的答案巴勃罗和乔纳森。我最终接受了Pablo's,因为我没有明确的地方让我得到指向静态数据的指针(根据Jonathan)在我的情况中。再次感谢!
回复:*我一直试图封装数据,而不是使用全局变量*编程没有绝对的规则。为了这个特殊的目的,我想说根据PABlo的答案,可以有一个全局变量。 – JeremyP 2011-01-13 16:51:40