cómo funciona el compilador en c