My linked list and nodes are defined as follows:

```
struct node{
int item;
struct node *next;
};

struct linkedlist{
    int size;
    struct node *head;
};

struct linkedlist *L=(struct linkedlist*)malloc(sizeof(struct linkedlist));

```

What's the difference between using:

```
struct node *temp=malloc(sizeof(struct node));
temp=L->head;

```

and:

```
struct node *temp=L->head;

```

(without using malloc)

Basically if i change anything to the temp pointer(e.g temp->item=3), will it be reflected in the original linked list L for both cases?

Thanks