Ver Mensaje Individual
  #16 (permalink)  
Antiguo 29/07/2014, 14:29
CalgaryCorpus
 
Fecha de Ingreso: junio-2008
Ubicación: Seattle, USA
Mensajes: 733
Antigüedad: 15 años, 10 meses
Puntos: 61
Respuesta: Problema con printf en C

No corresponde echarle la culpa al compilador cuando el código está mal construido AUNQUE funcione en algunos casos.
De hecho, esta misma discusión se debe a que existe un comportamiento aparentemente errático, ¿no?

Si uno pudiera mirar la variable numero asi (por ejemplo si el usuario hubiera ingresado "57"

Código pseudo:
Ver original
  1. numero = | 5 | 7 | \0 | basura | basura | basura ... | ... | ultimo caracter

y quieres saber desde que posicion hasta que posicion revisar los numeros, TIENES que partir desde la izquierda

Código pseudo:
Ver original
  1. numero = | 5 | 7 | \0 | basura | basura | basura ... | ... | ultimo caracter
  2.          ------->

no desde la derecha

Código pseudo:
Ver original
  1. numero = | 5 | 7 | \0 | basura | basura | basura ... | ... | ultimo caracter
  2.                                                            <----------------

porque la basura que haya puede interferir en tu lógica.

Aquí da lo mismo la inicializacion de la variable numero, es el recorrido que se hace el problema.
Da lo mismo la inicializacion porque SIEMPRE se esta leyendo algo (con scanf), PERO scanf rellena a numero DE IZQUIERDA A DERECHA.
Leerlo en el otro sentido producirá problemas. Si no los produce es SUERTE (o mala suerte, depende del punto de vista)
__________________
Visita mi perfil en LinkedIn