可以说我有这个结构:
typedef struct nKey {
int num;
widget* widget;
} NUMBER_KEY;
和一个功能:
void dialKey(widget* widget) {
// Need to print 'num' of the struct that this widget resides in
}
我该怎么做呢?我试过类似的东西:
printf("%d", * (int *) widget - sizeof(int)); // Failure.org
编辑:可以安全地假设正在传递的小部件实际上是 NUMBER_KEY 结构的成员
编辑:寻找问题的解决方案而不是另一种方法。