Fortran en distintos OS
Publicado por Rubén (1 intervención) el 22/05/2008 12:49:22
Hola, programo en fortran desde hace poco y se me ha ocurrido una cosa para mis programas:
Cuando quiero limpiar la pantalla, si estoy en windows uso:
call system("cls")
y si estoy en linux uso:
call system("clear")
Se me ha ocurrido que al principio del programa puedo llamar al comando UNAME:
call system("uname")
Si estoy en linux, esto me devolvería la palabra LINUX, y si estoy en windows daría error. La cosa sería definir una variable de caracteres que llamaré OS que tomase el valor "clear" si uname me devuelve "linux" y que tome el valor "cls" si uname falla. Luego no tendría más que poner:
call system(OS)
El problema es que no sé cómo decirle al programa que si uname falla me de un valor de OS y si no falla me de otro... como uname es una llamada al sistema operativo, pues no se hacerlo!!
Sería algo así como
if (UNAMEFALLA) then
OS="cls"
else
OS="clear"
endif
pero cómo establezco la condición UNAMEFALLA???
Cuando quiero limpiar la pantalla, si estoy en windows uso:
call system("cls")
y si estoy en linux uso:
call system("clear")
Se me ha ocurrido que al principio del programa puedo llamar al comando UNAME:
call system("uname")
Si estoy en linux, esto me devolvería la palabra LINUX, y si estoy en windows daría error. La cosa sería definir una variable de caracteres que llamaré OS que tomase el valor "clear" si uname me devuelve "linux" y que tome el valor "cls" si uname falla. Luego no tendría más que poner:
call system(OS)
El problema es que no sé cómo decirle al programa que si uname falla me de un valor de OS y si no falla me de otro... como uname es una llamada al sistema operativo, pues no se hacerlo!!
Sería algo así como
if (UNAMEFALLA) then
OS="cls"
else
OS="clear"
endif
pero cómo establezco la condición UNAMEFALLA???
Valora esta pregunta


0