我想知道是否有可能在C中的main()
函数中包含一些东西。#include里面的main()函数
例如,在Cell程序中,我定义了cache-api.h的参数,稍后在我想要更改的main()
函数中。
我知道用#define
定义的东西可以用程序中任何地方的#undef
来定义,但是在重新定义我需要的参数之后,我必须再次包含cache-api.h。那可能吗?
我该如何解决这个问题更优雅?假设我想从cache_rd(...)
的主存储器中读取,但是在执行SPU的过程中类型会有所不同,我如何在同一个程序中同时使用#define CACHED_TYPE struct x
和#define CACHED_TYPE struct y
?
在此先感谢您的答复,我希望我的表达清楚。
如果您想优雅地解决这个问题,请切换到面向对象的语言,并在运行时使用多态性在二者之间进行选择。 – Blindy 2011-05-03 18:34:20
不幸的是我不能这样做,我在单元格中,我使用C – Madrugada 2011-05-03 18:46:19
将你的程序分成不同的文件,并根据文件本地化文件的不同定义。 – 2011-05-03 18:49:58