社区首页 >问答首页 >当我已经在使用Go to command时,如何嵌套另一个Go To command

当我已经在使用Go to command时,如何嵌套另一个Go To command
EN

Stack Overflow用户
提问于 2021-10-12 17:17:09
回答 2查看 53关注 0票数 1

这是我拥有的工作代码。当前,它读取事件文件(file=1)的第一行,然后读取工作站文件(file=2)的第一行,并将它们写出,执行go to命令,返回并读取工作站文件中的下一行,然后再次将其全部写出,并遍历该文件,直到读完工作站文件的最后一行。

实际上,我需要的是再次“循环”整个事件,以便现在可以读取和写出事件文件(file=1)的第二行,然后对事件文件中的所有行执行此操作。

我尝试使用另一个"go to“命令,但我的输出从来没有改变过当前代码输出的内容。

有没有人知道如何添加另一个go to command,让它再次循环通过这个东西?

代码语言:javascript
代码运行次数:0
复制
 program events

            implicit none

            character*40 aline
            character*40 bline

            open (1, file="event", status="old")
            open (2, file="stations", status="old")
            open (3, file="output", status="new")

            read(1, '(a40)',end=60) aline
    1       read(2, '(a40)',end=60) bline

            write(3,*) aline, bline
            go to 1

    60      stop

 end program events
EN

回答 2

Stack Overflow用户

发布于 2021-10-13 03:15:28

我会完全避免使用goto -在现代Fortran中很少有任何需要,虽然我并不是狂热分子,但它们通常出现在更难阅读的代码中。这就是我要做的--基本上,当你有两个循环时,我会写两个循环:

代码语言:javascript
代码运行次数:0
复制
ijb@ijb-Latitude-5410:~/work/stack$ cat british_rail.f90 
Program events

  Use, Intrinsic :: iso_fortran_env, Only : eof => iostat_end

  Implicit None

  Integer :: io_status

  Character( Len = 40 ) :: aline
  Character( Len = 40 ) :: bline

  Open( 10, file="event"   , status="old" )
  Open( 20, file="stations", status="old" )
  Open( 30, file="output"  , status="new" )

  events_read: Do
     Read( 10, '(a40)', iostat = io_status) aline
     If( io_status == eof ) Exit events_read
     stations_read: Do
        Read( 20, '(a40)', iostat = io_status ) bline
        If( io_status == eof ) Exit stations_read
        Write( 30, * ) aline, bline
     End Do stations_read
     Rewind 20
  End Do events_read

End Program events
ijb@ijb-Latitude-5410:~/work/stack$ gfortran --version
GNU Fortran (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ijb@ijb-Latitude-5410:~/work/stack$ gfortran -Wall -Wextra -std=f2008 -fcheck=all -g british_rail.f90 
ijb@ijb-Latitude-5410:~/work/stack$ cat event 
Leaves on track
Car Stuck on Level Crossing
Wrong kind of snow
ijb@ijb-Latitude-5410:~/work/stack$ cat stations 
Leicester
Market Harborough
Bedford
St Pancras
ijb@ijb-Latitude-5410:~/work/stack$ cat output
cat: output: No such file or directory
ijb@ijb-Latitude-5410:~/work/stack$ ./a.out
ijb@ijb-Latitude-5410:~/work/stack$ cat output
 Leaves on track                         Leicester                               
 Leaves on track                         Market Harborough                       
 Leaves on track                         Bedford                                 
 Leaves on track                         St Pancras                              
 Car Stuck on Level Crossing             Leicester                               
 Car Stuck on Level Crossing             Market Harborough                       
 Car Stuck on Level Crossing             Bedford                                 
 Car Stuck on Level Crossing             St Pancras                              
 Wrong kind of snow                      Leicester                               
 Wrong kind of snow                      Market Harborough                       
 Wrong kind of snow                      Bedford                                 
 Wrong kind of snow                      St Pancras                              
ijb@ijb-Latitude-5410:~/work/stack$ 
票数 2
EN

Stack Overflow用户

发布于 2021-10-12 23:20:11

将read from 2上的end=更改为read from 1。您需要倒回2,因为您已到达结尾。

代码语言:javascript
代码运行次数:0
复制
50      read(1, '(a40)',end=60) aline
        rewind 2
1       read(2, '(a40)',end=50) bline

        write(3,*) aline, bline
        go to 1

60      stop
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69548628

复制
相关文章
【Flutter】Dart 泛型 ( 泛型类 | 泛型方法 | 特定类型约束的泛型 )
泛型作用 : 为 类 , 接口 , 方法 提供复用性 , 支持类型不确定的数据类型 ;
韩曙亮
2023/03/28
5.4K0
泛型类、泛型方法、类型通配符的使用
       你可以写一个泛型方法,该方法在调用时可以接收不同类型的参数。根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用。
泰斗贤若如
2019/06/19
3.8K0
ArrayList的toArray()方法为啥不利用泛型返回List的泛型类型的数组探究
有些同学提出“ArrayList的public T[] toArray(T[] a) 带参数的方法支持泛型可以返回参数类型的数组,public Object[] toArray()
明明如月学长
2021/08/31
1.6K0
ArrayList的toArray()方法为啥不利用泛型返回List的泛型类型的数组探究
【Java 泛型】泛型简介 ( 泛型类 | 泛型方法 | 静态方法的泛型 | 泛型类与泛型方法完整示例 )
泛型 可以 简单理解为 参数化类型 , 主要作用在 类 , 方法 , 接口 上 ;
韩曙亮
2023/03/29
15.4K0
【Java 泛型】泛型简介 ( 泛型类 | 泛型方法 | 静态方法的泛型 | 泛型类与泛型方法完整示例 )
Java如何优雅获取泛型类型
在 Java 开发中,获取泛型这种操作虽不是很常用,但有时确实必须的,比如 将Json 字符串反序列化成对象的时候。今天就来介绍这个操作。
Bug开发工程师
2018/12/24
12.4K0
Java如何优雅获取泛型类型
【Kotlin】泛型 ① ( 泛型类 | 泛型参数 | 泛型函数 | 多泛型参数 | 泛型类型约束 )
将 泛型参数 T 放在 尖括号 <T> 中 , 该泛型参数放在 类名后 , 主构造函数之前 , 该泛型参数 T 是 类型占位符 ,
韩曙亮
2023/03/30
2.9K0
Java如何优雅获取泛型类型
在 Java 开发中,获取泛型这种操作虽不是很常用,但有时确实必须的,比如 将Json 字符串反序列化成对象的时候。今天就来介绍这个操作。
好好学java
2019/05/06
6.7K0
Java如何优雅获取泛型类型
Java如何优雅获取泛型类型
在 Java 开发中,获取泛型这种操作虽不是很常用,但有时确实必须的,比如 将Json 字符串反序列化成对象的时候。今天就来介绍这个操作。
Spark学习技巧
2019/05/21
2.7K0
Java如何优雅获取泛型类型
C#泛型入门泛型类、泛型集合、泛型方法、泛型约束、泛型委托
给.neter们整理了一份《.NET/C#面试手册》,目前大约4万字左右,初衷也很简单,就是希望在面试的时候能够帮助到大家,减轻大家的负担和节省时间。对于没有跳槽打算的也可以复习一下相关知识点,就当是查缺补漏!
全栈程序员站长
2022/09/14
2.6K0
C#泛型入门泛型类、泛型集合、泛型方法、泛型约束、泛型委托
Java进阶:【泛型】认识泛型,泛型方法,泛型类,泛型接口和通配符
例如关于这个元素如何保存,如何管理等是确定的,因此此时把元素的类型设计成一个参数,这个类型参数叫做泛型。
冷环渊
2021/11/29
3.5K0
Java进阶:【泛型】认识泛型,泛型方法,泛型类,泛型接口和通配符
泛型方法
上一篇章我们出于类型安全的考虑,不建议使用原生类型,用List<?>代替使用,但是List<?>不允许添加除null以外的任何元素,因此我们需要使用泛型方法List<E>,如下: import jav
java达人
2018/01/31
1.3K0
【Java 泛型】泛型用法 ( 泛型类用法 | 泛型方法用法 | 泛型通配符 ? | 泛型安全检查 )
泛型类用法 : 使用时先声明泛型 , 如果不声明泛型 , 则表示该类的泛型是 Object 类型 ;
韩曙亮
2023/03/29
10.2K0
【Java 泛型】泛型用法 ( 泛型类用法 | 泛型方法用法 | 泛型通配符 ? | 泛型安全检查 )
【Kotlin】泛型总结 ★ ( 泛型类 | 泛型参数 | 泛型函数 | 多泛型参数 | 泛型类型约束 | 可变参数结合泛型 | out 协变 | in 逆变 | reified 检查泛型参数类型 )
将 泛型参数 T 放在 尖括号 <T> 中 , 该泛型参数放在 类名后 , 主构造函数之前 , 该泛型参数 T 是 类型占位符 ,
韩曙亮
2023/03/30
4.1K0
【Kotlin】泛型总结 ★ ( 泛型类 | 泛型参数 | 泛型函数 | 多泛型参数 | 泛型类型约束 | 可变参数结合泛型 | out 协变 | in 逆变 | reified 检查泛型参数类型 )
泛型方法
泛型方法 http://msdn2.microsoft.com/zh-cn/library/twcad0zb.... Service Locator with Generic Methods 泛型的Foxcop设计规则 Avoid excessive parameters on generic types Collections should implement generic interface Do not declare static members on generic types Do no
张善友
2018/01/22
7150
Java泛型基础(二)泛型接口泛型方法# 总结
泛型可以应用于同一个类,该类可以针对多种类型使用,例如构建一个RedisTemplateService组件,用于处理当前应用中所有对象的缓存操作。这篇文章主要介绍泛型应用于接口、方法和匿名内部类的一些知识点和使用案例,也包括《Java编程思想》中对应的练习题的解读。
阿杜
2018/08/06
3.3K0
Dart中的泛型方法、泛型类、泛型接口
为了能在一个方法里实现传入什么数据类型就返回什么数据类型,可以利用泛型将方法写成下面这样:
越陌度阡
2020/12/10
3.8K0
Dart中的泛型方法、泛型类、泛型接口
Java——泛型基本总结(通配符、泛型接口、泛型方法)
假如,现在定义一个表示坐标的类,Point,属性坐标x,y,但是此类设计特殊,现在由于设计特殊,现在实际使用中有可能出现以下三种结构的数据:
Winter_world
2020/09/25
3.3K1
Java——泛型基本总结(通配符、泛型接口、泛型方法)
切面获取泛型方法T的真实类型
这次是介绍一个使用了Mybatis Pro的项目中遇到的问题。Mybatis是在Spring项目中非常常见的持久层框架。在享受其带来的便利的同时,也给SeriveMock带来了新的挑战。
Antony
2021/08/06
2.4K0
在Feign接口中返回泛型类型——自定义Decoder
前几天对接了一套第三方接口,这几个第三方接口的请求地址一样,请求参数和响应结果中有很多共同的字段,所以就想把这些字段都抽出来,通过Feign定义的接口返回类型直接返回泛型。
DannyHoo
2020/06/28
8.7K0
在Feign接口中返回泛型类型——自定义Decoder
泛型与关联类型
和其他我学过的语言相比较,Rust有一些令人费解的概念。借用,所有权,借用检查这些概念大家应该已经都听说过了,我自己曾花费数小时在生命期问题上,最终不得不放弃抗争,转而采用Clone来解决。
MikeLoveRust
2020/04/07
1.3K0

相似问题

如何使方法返回泛型类型?

56

使方法返回类型为泛型

21

如何使方法的返回类型成为泛型?

76

泛型方法返回泛型类型

11

如何使方法返回泛型方法?

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档