[C con Clase] Glib

omar mendoza omar.p9 en gmail.com
Mie Ene 6 05:33:11 CET 2010


gracias Steven, muy buena explicación

El 5 de enero de 2010 11:33, vicente lozano <vicentelozano en gmail.com>escribió:

> Como siempre gran respuesta Steven, veo que los turrones y los champagnes
> de estas fechas no te han causado daño permanente jeje.
>
> Gracias por la aclaracion :)
>
> 2010/1/5 Steven Davidson <srd4121 en njit.edu>
>
>> Hola Vicente,
>>
>>
>> 2010/1/5 vicente lozano <vicentelozano en gmail.com>
>>
>> Seguro que es eso lo que falla y no el que no reserve memoria para el
>>> puntero char *alreves?
>>>
>>>
>>
>> No, porque la función 'g_strreverse()' retorna un puntero a la misma
>> cadena entrante. Lo que sí fallará es el funcionamiento esperado del
>> programa al intentar mostrar las dos cadenas original y al revés, ya que el
>> puntero 'alreves' apuntará a la misma información.
>>
>> Si Omar quiere mantener dos cadenas diferentes, entonces tendrá que crear
>> dos cadenas en memoria, una para la cadena original y otra para la
>> modificada. Por ejemplo,
>>
>> gchar prueba[] = "Hola Mundo Glib!!";
>> gchar alreves[] = "Hola Mundo Glib!!";
>>
>> g_strreverse( alreves );
>>
>> O podemos usar 'g_stpcpy()' para copiar una cadena a otra; esto es,
>>
>>  gchar prueba[] = "Hola Mundo Glib!!";
>> gchar alreves[sizeof prueba];  // el tamaño viene a ser 18 'gchar', si no
>> he contado mal
>>
>> g_stpcpy( alreves, prueba );
>>  g_strreverse( alreves );
>>
>> También se podría usar la función 'g_strdup()' para realizar la creación
>> de una cadena dinámica junto con su copia o duplicación. Por ejemplo,
>>
>>  gchar prueba[] = "Hola Mundo Glib!!";
>> gchar * alreves = g_strdup( prueba );
>>
>> g_strreverse( alreves );
>> ...
>> g_free( alreves );  // Para liberar la memoria creada por 'g_strdup()'
>>
>>
>> Espero haber aclarado el tema.
>>
>> Steven
>>
>>
>> _______________________________________________
>> Lista de correo Cconclase Cconclase en listas.conclase.net
>> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
>> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>>
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>



-- 
"Las cicatrices nos recuerdan que el pasado fue real" Dr. Lecter en Dragón
Rojo
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20100105/cbe0b31e/attachment.html>


Más información sobre la lista de distribución Cconclase