Tu bom prikazal standardne posebnosti v Fortranu, ki jih boste s pridom uporabili pri programiranju. Priporoca se tipkanje programa z malimi crkami, saj je tako kodiran program bolj citljiv.
Formatne stavke vkljucene lahko vkljucimo v ukaz read ali write: {
character ime*65 write(*, '('' Ime vhodne datoteke: '', $)' ) read(*,'(A)') ime
Datoteke delimo na tekstovne in binarne datokeke. Direktna datoteka je poseben primer binarne datoteke, ki ima fiksno dolzino zapisa (record). Fortran omogoca branje/pisanje v prostem formatu (*), uporabniskem formatu (format()) in brez formata (samo v binarne datoteke). Neformatirano direktno datoteko z dolzino enega zapisa 58 bytov se odpre z ukazom
open(1, 'results.bin', status='NEW', * access='DIRECT', form='UNFORMATTED', * recl=58)Dolzina enega zapisa RECL se doloca z maksimalno velikostjo zapisa v datoteki. Zapisi imajo lahko razlicne vsebine podatkov, dolzina zapisa pa je fiksna zaradi hitrejsega dolocanja pozicije datotecnega kazalca. Doloci se jo s sestevkom dolzine vseh spremenljivk in upostevanjem, da zavzame realna spremenljivka 4 byte, celostevilcna 2, znakovna pa toliko, kolikor znakov ima rezerviranih.
Za branje in pisanje enote se uporablja standardni read/write stavek brez podatka o formatu.
write(1, rec=2) (x(i), i = 1, n/2) read(1, rec=2) (x(i), i = 1, n/2)Pri vseh branjih in pisanjih se lahko testira napaka ob konverziji ali napaka na vhodno/izhodno enoti s parametrom err. Primer:
... read(line(6:80), '(I10)', err=102) nodes ... return 102 stop 'Napaka pri branju parametra loads!' end
Fortran omogoca pisanje in branje v svoje interne enote v obliki character polja. To nam omogoca pretvarjanje numericnih spremenljivk v znakovne. Najveckrat se to uporablja za podprograme, ki zahtevajo kot parameter znakovno spremenljivko, na voljo pa imamo le numericno spremenljivko. Tipicen primer uporabe je izpis teksta v jeziku GKS. Primer:
character cnode*3 integer node ... write(cnode, '(I3)') node call gtx(x, y, cnode) end