65,201
社区成员




#include "A.h"
#define S U
#include "B.h"
然后B中的S就变成U了,U这个名称要小心选择,不要扰乱B.h中的其它名称。
[/quote]
#define S A_S
#include "A.h"
#define S B_S
#include "B.h"[/quote]
真不愧为未定义行为大师啊
#include "A.h"
#define S U
#include "B.h"
然后B中的S就变成U了,U这个名称要小心选择,不要扰乱B.h中的其它名称。
[/quote]
应该把#define S U
放在B.h里,否则B.c里没有这个定义,就会出错。[/quote]
这个过虑了,不需要这样做。楼主说那是两个厂商给的库,不可能以源码的方式给你。
#include "A.h"
#define S U
#include "B.h"
然后B中的S就变成U了,U这个名称要小心选择,不要扰乱B.h中的其它名称。
[/quote]
#define S A_S
#include "A.h"
#define S B_S
#include "B.h"
#include "A.h"
#define S U
#include "B.h"
然后B中的S就变成U了,U这个名称要小心选择,不要扰乱B.h中的其它名称。
[/quote]
应该把#define S U
放在B.h里,否则B.c里没有这个定义,就会出错。
#include "A.h"
#define S U
#include "B.h"
然后B中的S就变成U了,U这个名称要小心选择,不要扰乱B.h中的其它名称。