Ver Mensaje Individual
  #9 (permalink)  
Antiguo 15/09/2006, 18:17
MaxExtreme
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 8 meses
Puntos: 17
Cita:
Iniciado por Nivel7 Ver Mensaje
EStoy de acuerdo en algunas cosas con MaxExtreme, especialmente en el doble puntero.

veamos esto:

if (!VaciaArriendo(*CabezaArriendo))

pareciera que la funcion VaciaArriendo(... trabaja con un parametro copia del tipo Arriendo por estar desrreferenciando, a menos que verifiques que CabezaArriendo es un puntero a puntero.

si tus funciones o las operacione a realizar usaran un puntero, pues es sufuciente con pasar tu dato como un puntero, a menos que tengas una funcion que trabaje con tablas(matrices).
de lo contrario, puede ser confuso y causa de problemas.

pero supongo que con modificar eso, tu programa queda muy bien.
asta quedo mas compacto que el anterior.
y con relacion al for y while, pues es cuestion de estilos, pero generalmente :
el while lo uso para verificar la activacion de una bandera, ya sea para seguir o slir de una seccion del programa, y el for es para hacer recorridos en arrays u otro tipo de contenedores.

Saludos.
Es simple: En todas las veces que escribe CabezaArriendo lo hace desreferenciándolo, *CabezaArriendo.

Que quite un * en la definición y en todos los demás sitios, y funcionará igual.

Y aún en el raro caso de que fuera una matriz de dos dimensiones, funcionaría igual, al final solo estaría accediendo a CabezaArriendo[0] continuamente.