2017-04-20 90 views
0

出于多种原因,我必须包括一个固定的文件格式,“header.f”只包含一个格式表达式:英特尔Fortran错误5082当使用“包括”

c 
8000 format(/, 
    & t9,'----------------------------------------------------',/, 
    & t9,'Some header that i want to include , Tel.555-55555 ',/, 
    & t9,'----------------------------------------------------') 
c 

以我主代码我有:

include 'header.f' 

在Linux上编译,与英特尔的编译器,我得到以下信息:

header.f(6): error #5082: Syntax error, found END-OF-FILE when expecting one of: <END-OF-STATEMENT> ; <LABEL> BLOCK BLOCKDATA PROGRAM MODULE TYPE COMPLEX BYTE ... 

我应该如何结束头文件? 为什么同样的例子在Windows上工作(使用Visual Studio)?这取决于一些编译选项吗?

谢谢!

编辑1:显然静态添加写入“header.f”到主,代码的作品就像一个魅力。问题是只包含格式的.f的“汇编”。

+0

你的问题不清楚。您不能使用include将固定格式的源插入到自由格式编译中。通过使用两种行连续标记,可以构建包含72列固定格式和自由格式的包含文件。 – tim18

+0

主程序是否也是固定形式?它看起来并不像缺乏缩进。 – francescalus

+0

如果编译器试图单独编译'header.f',我期望看到类似这样的错误消息。我想我们需要知道主程序中的内容以及如何编译所有内容。 –

回答

0

不幸的是,我是编译器中包含header.f的人之一。问题是我试图编译一个固定格式的文件用作include。 正如有人在评论中所说,不建议使用.f扩展名来包含文件。

经验教训,谢谢大家对我提供的帮助!