У меня есть функция, которая возвращает адрес следующим образом
struct node *create_node(int data)
{
struct node *temp;
temp = (struct node *)malloc(sizeof(struct node));
temp->data=data;
temp->next=NULL;
printf("create node temp->data=%d\n",temp->data);
return temp;
}
где struct node -
struct node {
int data;
struct node *next;
};
Как я могу видеть в printf ("") адрес, хранящийся в temp?
UPDATE
Если я проверю адрес в gdb, адреса поступают в шестнадцатеричном формате, т.е.
0x602010, где один и тот же адрес в printf("%p",temp)
приходит в другом количестве, которое отличается от того, что я видел в команде печати gdb.