Título: Pasar string por referencia o no Publicado por: sora_ori en 11 Febrero 2015, 20:44 pm Hola!
Estoy haciendo un programa modular y tengo dudas sobre si tengo que pasar una cadena por referencia o no. Yo llamo a la función desde un menú Código
Y la función es la siguiente: Código
Al compilar y probar no deja escribir nada, me salta el menú principal. Agradezco la ayuda :P Título: Re: Pasar string por referencia o no Publicado por: _Enko en 11 Febrero 2015, 21:29 pm Hola, mh... no es referencia el problema tuyo en el codigo que tienes. Pero si, pasar por referencia es lo que buscar.
Código
Código
introducirFrase no retorna un char*. Código char cadena[255] es una variable local. Desaparece al terminar la funcion. return debe devolver int en tu caso. Algo asi te deberia de servir: Código
Saludos. Título: Re: Pasar string por referencia o no Publicado por: rir3760 en 12 Febrero 2015, 03:17 am Ademas de lo indicado por _Enko (retornar en base a la variable local "cadena" debe ser el error principal) deberías evitar el uso de llamadas a system, gets y el uso de la biblioteca conio de Borland, mas información en la pagina |Lo que no hay que hacer en C/C++. Nivel basico| (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html).
Y si envías un texto a la salida estándar con: Código La cadena debe terminar con el carácter de avance de linea (para ello lo mas sencillo es utilizar puts en lugar de printf) o bien vacías explícitamente el bufer de la salida estándar con fflush(stdout). Un saludo Título: Re: Pasar string por referencia o no Publicado por: sora_ori en 16 Febrero 2015, 19:54 pm Buenas compañeros,
Sigo teniendo problemas a la hora de leer Strings, si leo caracteres no tengo problema pero como quiera escribir un Strings con una frase con espacios me da el siguiente error: (http://i59.tinypic.com/28rmy2x.png) No me permite escribir nada en el String Código Código
Creo que será que tengo que recoger de otra forma la cadena porque con un SCANF puedo pero no me permite coger frases con espacios y no es el objetivo que estoy buscando. Gracias!!! Título: Re: Pasar string por referencia o no Publicado por: rir3760 en 17 Febrero 2015, 03:25 am Creo que será que tengo que recoger de otra forma la cadena porque con un SCANF puedo pero no me permite coger frases con espacios y no es el objetivo que estoy buscando. Con la información que muestras no es posible ayudarte, por favor publica el código fuente completo.Un saludo Título: Re: Pasar string por referencia o no Publicado por: sora_ori en 17 Febrero 2015, 18:42 pm Buenas,
Ya he podido solventar el problema de leer un String, ahora tengo problemas al pasar por referencia, dejo el código: Código
Al leer un String y pasarlo por referencia se pone " & " delante de la variable pero me da error. Gracias Título: Re: Pasar string por referencia o no Publicado por: theluigy13etv en 19 Febrero 2015, 18:41 pm Si te das cuenta, en el prototipo de tu función declaraste como char *. De la misma forma debes hacerlo en la implementación.
Cambia esto que está así: Código: int frecuencia(char *frase[20], char letra) Por esto: Código: int frecuencia(char *frase, char letra) Título: Re: Pasar string por referencia o no Publicado por: sora_ori en 19 Febrero 2015, 21:22 pm Ya lo he podido solucionar TODO!
Gracias por la ayuda compañeros!! :) Saludos |