养鬼为祸小侄子出场:懂fortran语言的进

来源:百度文库 编辑:高校问答 时间:2024/04/30 22:12:09
fortran中open(7,file='*.*')中的7是什么意思,这个语句转换成C语言应该是什么样的?

7是 设备号,文件号.
是 open (unit=7,file='....') 把 unit= 省略.
unit -- 英文"设备"

fortran是古老的语言,那时没有磁盘,不像现在,我们可以同时打开许多文件读写,而且全在一个盘上.那时一台设备只能做一件事,要么读,要么写,读一台设备只能读一个文件,写一台设备也只能写一个文件.所以open一个文件和open一个设备是等同的,open7号设备,读写7号设备.
open(7,..)
下面 读:
READ(7,格式语句行号) 参数表
或写
WRITE(7,格式语句行号) 参数表
close(7) -- 关闭7号设备(文件)
------------------------------------
C语言:
FILE *fin7; // 相当7
char file_name[]="data.txt"; // 相当 file='*.*'
fin7 = fopen( file_name,"r"); // open 供 读
fscanf(fin7,"%d %f",&i,&a); // 相当 READ(7....

如果open 供写:
fin7 = fopen( file_name,"w"); // open 供写
fprintf(fin7,"%d %f\n",i,a); // 相当 WRITE(7,...
fclose(fin7); // 关闭文件