<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'><div dir='ltr'>
Miles de gracias a los dos, ya tengo el programa hecho.<br><br>la funcion buscaxnombre se la saltaba porque el cin.getline, como comentabais, recibia el intro o yo que se que, pero con un fflsuhs(stdin); corre de maravilla. <br><br>gracias a todos.<br><br><div><hr id="stopSpelling">Date: Mon, 4 Jul 2011 17:47:14 +0200<br>From: srd4121@njit.edu<br>To: cconclase@listas.conclase.net<br>Subject: Re: [C con Clase] problema separando funciones.<br><br><div>Hola Josep,<br></div><div>Bueno, Salvador se me ha adelantado, pero quiero agregar unos matices al código que nos enviaste.<br></div><div class="ecxgmail_quote">2011/7/4 josep el wendo <span dir="ltr"><<a href="mailto:josepbord@hotmail.com">josepbord@hotmail.com</a>></span><br>
<blockquote style="padding-left: 1ex; border-left: 1px solid rgb(204, 204, 204);" class="ecxgmail_quote">




<div><div dir="ltr">
Hola; he cambiado de programa (en vez de dev ahora con codeblocks) y me pasa lo mismo: no separo bien las funciones.<br><br>Se trata de un programa para aprender, pero que se supone, gestionaria una agenda (aunque de momento hay que darle las entradas a mano y cada vez que se ejecuta el programa).<br>

<br>les mando el codigo, pero no hace falta que comprueben que está bien y que no; me sobra con que resuelvan mis dudas:<br></div></div></blockquote><div> </div><div>Si el código es para aprender, DEBO comentarte algunas cosas que he visto en este código fuente:</div>

<div><br>1. Variables globales: no las necesitas y créeme te pueden complicar la vida MUY fácilmente, por lo que se consideran peligrosas. Si quieres comunicarte con las funciones, usa parámetros, que para eso están.</div>

<div> </div><div>2. NO USES 'goto'. No se debería usar para nada (casi nada). En tu caso, se usa el 'goto' a modo de bucle, por lo tanto, USA un bucle; C++ te da hasta tres diferentes tipos de bucles a escoger.</div>
<div> </div><div>En cuanto a la segunda duda, te comento que para la opción del menú, lees un solo carácter, pero no recoges el segundo carácter '\n' generado por pulsar la tecla de [ENTER] o [RETURN]. En este caso, aconsejo que leas una cadena de caracteres, pero que aceptes solamente el primer carácter. Por ejemplo,</div>
<div> </div><div>char resposta[10]="";</div><div>...</div><div>while( resposta[0] != 'x' and resposta[0] != 'X' )</div><div> </div><div> </div><div>Por cierto, veo un error en 'BuscaxNom()' donde comparas cadenas de caracteres con el operador ==. Escribes:<br>
<br>if ( nombusc==Agenda[s].nom )</div><div> </div><div>Esto no funcionará como esperas. Deberías usar la función estándar 'strcmp()', declarada en <cstring>. Esto es,</div><div> </div><div>if ( strcmp(nombusc, Agenda[s].nom) == 0 )</div>
<div> </div><div> </div><div>Espero que esto te oriente.</div><div> </div><div>Steven</div><div> </div></div>
<br>_______________________________________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ</div>                                         </div></body>
</html>