Anuncios Google

[C] IO Utilities Library - ¡Manejo de .INIs!

Se ha añadido el manejo de archivos de configuración .ini a la librería. Las funciones trabajan bien según mis testeos y, además, se ha mejorado la sublibrería strutilities.h con la función strint(), que permite convertir un string a número entero (siempre y cuando sea posible); además de otras mejoras.

La documentación está mucho más completa y detallada, he acabado por amar ese magnífico programa llamado "Doxygen" que hace tooodo el trabajo sucio, que es mucho. En la página principal se detalla mucho el formato adecuado de los archivos .ini para que sean legibles para las funciones de la librería. Sobre esto... me gustaron mucho las funciones de LuaDEV, que (creo) están inspiradas a su vez (creo) en la librería minIni, que conocí gracias al source del prxshot que estuve viendo. Así que me puse a ello, ideando un formato de archivo que permitiera comentar en la inicialización de las secciones, crear las keys dejando un espacio en blanco entre el símbolo de igual ("=") y el valor de la key, lo que le da un toque más legible. Como desventaja está el tener que usar los llamados sect-stops o finales de sección, que son tres "#" ("###") que le indican a la librería el final de la sección. Habrá, de los pocos que la usen, a quienes les guste, y otros a los que no (es GPL así que está abierta a cualquier modificación). A mi personalmente me gusta el orden ;)

Respecto a las otras mejoras, se sitúan en strutilities.h, y son dos funciones: strint(), que convierte cadena en entero, siempre que sea posible, y concat(), que concatena los dos strings que recive como argumentos y los devuelve. Es una función que encierra una enorme utilidad, no sé cómo no la hice antes xD

printf("\n > concat example: '%s'", concat(concat("primer string, ", "segundo string, "), "tercer string."));

Eso se puede usar perfectamente con variables, o macros... y, además, las veces que queramos! Podemos concatenar dos, tres, cuatro... ¡los strings que queramos!


>>> Descarga: http://www.mediafire.com/?6e7jtwgca2z0e

Última versión: IOUTILIB10092011.zip

En la descarga encontraremos un README con información básica; los archivos de la librería en sí y dos carpetas más: doc (la documentación) y iotest, que es el testeo que hacía de las funciones de la librería. Para ver la documentación directamente sin tener que buscar el susodicho index.html, puse un enlace, pero es un enlace de Linux, no creo que sirva para Windows. Respecto a iotest, simplemente ejecutáis el archivo COMPILE en la carpeta y (debería) compilaros el programa.


>>> Instalación:

Lo mejor sería que cualquier interesado se leyese el README (léeme... Sonrisa) o la index page de la documentación... pero para quien solo quiera probarla:

  • Ejecutais el archivo root.sh, ponéis vuestra clave de root y en la terminal: 

 

$sh INSTALL

Con esto copiareis los cuatro headers a /usr/include. Para Windows no tengo ninguna artimaña destas porque no trabajo en Windows. Si tú si lo haces, tendrás que copiar manualmente los susodichos archivos de cabecera al directorio donde tu compilador busque las cabeceras... a tu include...


>>> Warnings... bugs... posibles mejoras:

No tiene advertencias ni errores. Funciona 100%. Lo que sí que tengo dudas es:

  • Funcionamiento bajo OS Windows (probar, yo ya NO USO WINDOWS, gracias a Rober que me ayudó y a los diversos tutos de SceneBeta.com)
  • Mejorar algunas funciones, como las de encriptación, ioReadChars(), strnum()...
  • Añadir más funciones!

Espero que sea de ayuda a alguien. En cualquier caso, mi intención primera con esta librería era aprender C y el uso del Doxygen; un programa que, como ya dije, se me hace enormemente útil. Realmente fantástico xD

Un saludo a todos!

 


http://www.mhypnok.blogspot.com/

Gracias a Dark_AleX, Total_Noob, VirtuousFlame, Coldbird, Codestation...


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de dj51_Shura

Pues eso...

añadido el soporte y manejo de los archivos .ini de configuración,

y mejorada la sublibrería strutilities.h con dos funciones interesantes.

Leer arriba para descripción detallada, o ver documentación también mejorada ;)

Un saludo!


http://www.mhypnok.blogspot.com/

Gracias a Dark_AleX, Total_Noob, VirtuousFlame, Coldbird, Codestation...

Imagen de AitorDB

By Aitor

Pues a mi al compilar con la librería "ioutilities.h" me da error.

 

Añado captura:

La imagen añadida está redimensionada, para verla en tamaño completo haga "click" encima.

 


Sígueme en Twitter: @Aitor_db

Imagen de dj51_Shura

Creo que es porque

las directivas hacen referencia a las distintas librerías en /usr/include (si usas Linux) pero el compilador de PSP las busca en su propio directorio include. Supongo que tendrías que copiar las unistd.h, stat.h y resto de la prole...

En cualquier caso, siento las molestias. En el PC (puedes comprobarlo) las últimas versiones funcionan 100 % limpias, sin ningún warning.

Prueba lo dicho, viendo las directivas, y... aver qué tal...

PD: ¿qué versión descargaste? La última es la IOUTILIB04092011.zip...


http://www.mhypnok.blogspot.com/

Gracias a Dark_AleX, Total_Noob, VirtuousFlame, Coldbird, Codestation...

Imagen de dj51_Shura

Gracias

Si funciona en PSP, aun sin SDK y sin PSP (robo... >.<) podría animarme a hacer un ejemplo de explorador...

Un saludo a todos ;-)


http://www.mhypnok.blogspot.com/

Gracias a Dark_AleX, Total_Noob, VirtuousFlame, Coldbird, Codestation...

Imagen de sting18

Buen aporte shura ;).

Buen aporte shura ;).

Imagen de Ayrton990

Exelente aporte, se agradece

Exelente aporte, se agradece ;)

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.