Если у меня есть:container_of макросъемки, когда у нас есть указатель внутри структуры
struct my_container {
int x;
struct some_struct *ss;
}
Если у меня есть указатель сс, через которую я могу получить доступ к членам внутри some_struct, я должен быть в состоянии получить доступ my_container, выполнив правильно? Это то, что я делаю:
struct my_container *my_c;
my_c = container_of(&ss, struct my_container, ss)
Но это не работает точно, и я не в состоянии понять, почему. Может кто-нибудь мне помочь? Есть что-то, чего я не хватает?
Что вы подразумеваете под container_of() - это используемая определенная функция? –
@Madan - это макрос в ядре linux, который действует как «обратный» из 'offsetof' –
Является ли container_of чем-то вроде #define container_of (ptr, type, member) ((type *) ((char *) (ptr) - (unsigned long) (& ((тип *) 0) -> участник)))? – midor