[Ayuda] Bibliotecas de C?

Antonio Tellez Flores atellezf en yahoo.com.mx
Mie Nov 17 00:24:52 CST 2004


Saludos

> - Conocia de la libreria POSIX para hilos, pero y si quiero que el mismo
> programa este disponible para linux y windows? 

En Teoría puedes compilar un programa que use bibliotecas POSIX en
Windows NT/2000/XP/2003. 

> - Dos librerias pueden hacer lo mismo, si tu te decides por una y no por la
> otra, pues eso es que favoreces una.  Yo queria saber cuales favorecen ustedes.

> Gracias a todos por su invaluable ayuda, ahora ya se mas al respecto y estoy
> casi en el punto de mejor dejar C por la paz y hacer la investigacion para C++. 

En general es bastante dificil encontrar para todo bibliotecas que
funcionen en Windows y Linux, aun con lenguajes más portables que C.
Incluso aunque existan, no tienen todas las funcionalidades en todas las
plataformas o no tienen la misma estabilidad. Y aunque sean identicas,
la forma de uso varia, lo cual introduce algunas dificultades. 

Por estas razones cuando se programan aplicaciones multiplataforma se
diseña separando las partes no portables de las portables, y luego se
programa la parte especifica de cada plataforma.

Un ejemplo artificial.... supongamos que tienes una aplicación gráfica
que en algún lado despliega un cuadro que dialogo que puede decirte si o
no. Y regresa un entero 1 para si y 0 para no... La parte portable sería
asi

int resultado = pinta_dialogo_si_o_no();

if (resultado = 0) {
    printf("Dijo NO\n");

} else {
    printf("Dijo SI\n");
}

Y generalmente la interfaz gráfica es dependiente de la plataforma,
entonces la separas en una biblioteca, por ejemplo gui.h, ahi tendrias:

#ifdef WINDOWS

int pinta_dialogo_si_o_no(void) {
  /* Aquí pones código especifico de WIndows */
}

#elif LINUX

int pinta_dialogo_si_o_no(void) {
  /* Aquí pones código especifico de Linux */
}

#endif



Hasta la vista.
-- 
Antonio Téllez Flores
Ciencias de la Computación
Facultad de Ciencias - UNAM
Home Page: http://ada.fciencias.unam.mx/~atellez


 
_______________________________________________
Ayuda mailing list
Ayuda en linux.org.mx
Para salir de la lista: http://mail.linux.org.mx/cgi-bin/mailman/listinfo/ayuda/



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