I have just started to learn how to program and I am using this book called Head First C. There are sections in the book called *Brain Power*. In one of these sections it was written.

```
void fortune_cookie(char msg[])
{
  printf("Message reads: %s\n", msg);
  printf("msg occupies %i bytes\n", sizeof(msg));
}

```

The output:

> 
> Cookies make you fat
> 
> 
> msg occupies 8 bytes
> 
> 
> 

The Brain Power question was: Why do you think `sizeof(msg)` is shorter than the length of the whole string? What is `msg`? Why would it return different sizes on different machines?