找回密码
 注册
Simdroid-非首页
查看: 101|回复: 2

[3. Fortran] 请问这个地方WRITE的用法

[复制链接]
发表于 2007-4-13 09:42:04 | 显示全部楼层 |阅读模式 来自 湖北武汉
subroutine UpdateScreen()
  implicit none
  integer i
  character(len=20) :: str
  if ( .not. allocated(screen) ) return
  write( str, "('(',I3.3,'A1)')" ) ScreenWidth
  do i=1, ScreenHeight
    write(*, str) screen(:,i)
  end do
  return
end subroutine
在这个子程序中两处的WRITE分别是什么意义,请大侠指教,本人为初学者
发表于 2007-4-13 15:07:24 | 显示全部楼层 来自 浙江舟山
Simdroid开发平台
write(arg1, arg2) arglist
write语句的用途是把参数列表arglist里的参数按照 arg2 的格式写入到 arg1 里面,下面按照这个规则去解释那两个 write 语句就可以了。

第一个:write( str, "('(',I3.3,'A1)')" ) ScreenWidth
把 ScreenWidth 按照 I3.3 的格式写入到 str 里面,str 是个字符串变量,就是把 ScreenWidth 转换为字符串,另外前面加上左括号后面加一个空格再加右括号。

第二个:
write(*, str) screen(:,i)
把 screen(:, i) 按照 str 里指定的格式写入到 * 里面, * 是指的标准输出设备,也就是屏幕。

初学不要紧,基础的知识要找一本好书,多看看,多学学。

推荐 彭国伦 的《Fortran95程序设计》中国电力出版社
发表于 2009-4-7 13:29:50 | 显示全部楼层 来自 湖南长沙
学习学习
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-11-1 11:44 , Processed in 0.029544 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表