Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/09/2008, 22:57
yackcae
 
Fecha de Ingreso: junio-2008
Mensajes: 63
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Funcion para leer un string

Estás retornando un char, tienes que retornar un apuntador a la cadena de caracteres, además la cadena de caracteres esta declarada de forma tal que se perdería su valor al terminar la función, por lo que debería ser static, así:
Código:
char *leeString() {
	static char cadena[40];
	scanf("%s",&cadena);
	return cadena;
}
En cuanto a:

Código:
Alumnos.Nombre = leeString();
No se puede hacer asignaciones de ese tipo con cadenas de caracteres, se debe usar una función de copia:

Código:
strcpy(Alumnos.Nombre, leeString());
Aunque me parece más fácil hacerlo directamente, evitando tener que crear una función:
Código:
scanf("%s",&Alumnos.Nombre);