Título: Duda sobre portabilidad Publicado por: ivancea96 en 2 Julio 2013, 01:44 am Yo programo C++ en Windows 7. Programo en consola, principalmente porque no se mucho visual ni de API's xD
La duda es... Si, programando en consola, cambio los -system("cls");- y -system("pause");- (supongo que una mala costumbre mía), y pongo comandos de la librería estandar, ¿sería portable a otros Windows, Unix, Apple, y diversos sistemas? EDITO: Busco la forma de borrar la pantalla de consola sin usar system("cls"), clrscr(), ni escribir 100 saltos de linea. Título: Re: Duda sobre portabilidad Publicado por: amchacon en 2 Julio 2013, 02:22 am Cualquier función de la estándar es portable a cualquier sistema.
cin.get(); es un sustituto de pause. De limpiar no conozco ninguno, aunque puedes utilizar Compilación Condicional. Título: Re: Duda sobre portabilidad Publicado por: ivancea96 en 2 Julio 2013, 02:41 am Mm gracias amchacon. Echaré un vistazo a la compilación condicional.
Mejor dicho, buscaré alguna guia sobre eso, tengo que echarle un vistazo a fondo, que nunca me paré mucho. xD Título: Re: Duda sobre portabilidad Publicado por: amchacon en 2 Julio 2013, 02:52 am Está tirado:
Código
Esto se interpetra así: "Sí estás en una plataforma Windows, compila este código, si no lo estás compila este otro". Puedes ver los #define de los distintos sistemas operativos aquí: http://sourceforge.net/p/predef/wiki/OperatingSystems/ Aunque nada te impide a crearte los tuyos propios: Código
Cuando no estemos en Windows, quitamos el define y ya está. O bien, en vez de poner el #define en el código nos vamos a project -> build options -> #defines y ponemos: WINDOWS. Puede ser incluso más interesante crear dos opciones de construcción: Release Windows y Release Linux. En cada una ponemos nuestro #define correspondiente. Título: Re: Duda sobre portabilidad Publicado por: eferion en 2 Julio 2013, 08:36 am O bien, si eres más purista y no te gustan los condicionales del compilador en medio del código:
Código
Título: Re: Duda sobre portabilidad Publicado por: ivancea96 en 2 Julio 2013, 15:50 pm Muchas gracias amchacon, creo que eso venía a ser lo que buscaba.
Eferion, gracias también, ya que tengo varios system("cls"), y ayudará bastante. |