У меня проблемы с написанием функции, которая назначает указатель на адрес глобальной вложенной структуры.Но я бы хотел, чтобы это было сделано внутри функции, а не с помощью main. Пожалуйста, помогите мне написать функцию.Заранее спасибо
#include "stdio.h"
typedef struct
{
int c;
}code;
typedef code* p_code ;
typedef struct
{
char a;
int b;
code krish;
}emp;
emp Global_Sam;
int main()
{
code tmpcode_krish;
code* pcode_krish;
pcode_krish = &tmpcode_krish;
printf("Goal %p %p \r\n ", &(Global_Sam.krish), &(Global_Sam).krish);
memset(pcode_krish, 0 , sizeof( code));
// pcode_krish = &Global_Sam.krish;
PointNestedStructToPointer(&pcode_krish);
printf("Goal=> both should be same => %p %p \r\n ", &(Global_Sam.krish), pcode_krish);
return 0;
}
Здесь => pcode_krish = &Global_Sam.krish;
это будет указывать на глобальную вложенную структуру.Но мне нужно сделать это внутри функции, следовательно, функция, PointNestedStructToPointer
void PointNestedStructToPointer(p_code *dst )
{
dst = &Global_Sam.krish;
}
Вышеприведенная функция не отражает точный адрес глобальной вложенной структуры, я поставил отпечатки проверенными.Пожалуйста, помогите