C/Visual C - cadena

 
Vista:

cadena

Publicado por eduardo (82 intervenciones) el 27/10/2007 00:55:41
En mi programa tengo una variable char[] que recibe una cadena
del usuario. La cadena se pasa a una funcion(como una orden)
para ejecutar una operacion(ej. "mostrar_rep")
la funcion debe ejecutar la operación aun cuando la orden(la cadena)
tenga espacios o tabuladores al principo.
P.ej
" Mostrar_rep"
" Mostrar_rep", etc

Necesito ignorar los espacios en blanco y tabs al principio de la cadena
(más no espacios intermedios) para que la operacion se ejecute sin problemas.

Estaba haciendo algo como esto pero me arroja warning..

int main( void ) {
...

gets( orden );
char *ptrOrden;

ptrOrden = ignora_espacios( orden );
ejecutar( ptrOrden );
...

}

int *ignora_espacios( char *cad ) {
for ( ;*cad == ' ' || *cad == '\t'; cad++ );
/* salgo cuendo encuentre caracter diferente de ' ' 0 '\t' */

return cad; /* devuelvo la dirección del caracter encontrado */
}

Me funciona pero arroja:
[Warning] In function `main':
[Warning] assignment from incompatible pointer type

[Warning] In function `ignora_espacios':
[Warning] return from incompatible pointer type

Por que otra alternativa puedo optar:
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:cadena

Publicado por nayumi orama (53 intervenciones) el 27/10/2007 22:20:40
Tu funcion tiene en el prototipo puesto que devuelve un int * y estas devolviendo un char *.

50 flexiones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cadena

Publicado por eduardo (82 intervenciones) el 29/10/2007 16:51:30
ya me di cuenta : )
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar