24小时热门版块排行榜    

查看: 1776  |  回复: 12

709944890

金虫 (小有名气)

[求助] 屏幕输入地址变量 已有1人参与

请教fortran高手指点,我想要在屏幕上输入地址,如D:\wour\cddlsi\ppt.txt, 用了下面的语句,编译的时候没有报错,但是屏幕输入完不能运行。

character(len=35) address               
read*,address
        open(1,file="address"
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

坚持,淡定,信念
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

7152075

铁杆木虫 (著名写手)

解决问题的方法比遇到的问题多

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
709944890: 金币+10, ★★★很有帮助 2016-11-17 20:10:51
这个明显是错误的,因为你open的文件名称叫address,不是你输入路径的名称。想要实现你的那个功能,可以利用内部文件去实现。比如你在某个路径下建一个txt文档,里面第一行写上一个数字(我传附件中,仅仅为了举例而已)。代码如下:
program example
    implicit none
    character( len=125 ) str,cstr
    integer i
    write( *,* ) 'Input the adress:'
    read( *,* ) str
    write( cstr,* ) adjustl(trim(str)) !//内部文件书写格式,把str赋值给cstr
    open( 1,file=cstr )
    read( 1,* ) i
    write( *,* ) i
    end program example
PS:给你一个建议,其实路径你是不用自己去输入的,运行时出现黑框后,把那个文件直接拖入黑框中,路径自然产生。

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 1.txt
  • 2016-11-14 18:11:40, 1 bytes
Chemistry
2楼2016-11-14 18:11:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

709944890

金虫 (小有名气)

引用回帖:
2楼: Originally posted by 7152075 at 2016-11-14 18:11:45
这个明显是错误的,因为你open的文件名称叫address,不是你输入路径的名称。想要实现你的那个功能,可以利用内部文件去实现。比如你在某个路径下建一个txt文档,里面第一行写上一个数字(我传附件中,仅仅为了举例而 ...

Compiling Fortran...
C:\MSDEV\Projects\test\Text2.f90
C:\MSDEV\Projects\test\Text2.f90(7): error FOR1127: internal compiler error
Internal Error -- please report this bug
Command line error D2013: internal compiler error.
Error executing fl32.exe.
Text2.obj - 3 error(s), 0 warning(s)

再请问一下,我在编译的时候出现上面的错误,提示 write( cstr,* ) adjustl(trim(str)) !//内部文件书写格式,把str赋值给cstr,这一行。

因为我不知道 write( cstr,* ) adjustl(trim(str))的具体含义,我就按照自己的意思改了一下
program example
    implicit none
    character( len=125 ) str
    integer i
    write(*,*) 'Input the adress:'
    read(*,*) str
    adjustl(trim(str)) !//内部文件书写格式,把str赋值给cstr
    open(1,file=str )
    read(1,*) i
    write(*,*) i
    end program example
然后报错,
Compiling Fortran...
C:\MSDEV\Projects\test\Text2.f90
C:\MSDEV\Projects\test\Text2.f90(7): error FOR2934: lexical error: Unrecognized statement
C:\MSDEV\Projects\test\Text2.f90(7): error FOR3852: syntax error
Error executing fl32.exe.
Text2.obj - 2 error(s), 0 warning(s)
问题同样出在那一行。
期待您的解答!
坚持,淡定,信念
3楼2016-11-16 21:58:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

7152075

铁杆木虫 (著名写手)

解决问题的方法比遇到的问题多

【答案】应助回帖

引用回帖:
3楼: Originally posted by 709944890 at 2016-11-16 21:58:01
Compiling Fortran...
C:\MSDEV\Projects\test\Text2.f90
C:\MSDEV\Projects\test\Text2.f90(7): error FOR1127: internal compiler error
Internal Error -- please report this bug
Command line error D201 ...

这个怪我了,内部文件那里的注释我是后添加上的,是个中文感叹号,改成英文感叹号就没问题了,sorry。
program example
    implicit none
    character( len=125 ) str,cstr
    integer i
    write( *,* ) 'Input the adress:'
    read( *,* ) str
    str=adjustl( trim ( str ) )
    write( cstr,* ) str !//内部文件书写格式,把str赋值给cstr
    open( 1,file=cstr )
    read( 1,* ) i
    write( *,* ) i
    end program example
Chemistry
4楼2016-11-17 08:22:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

709944890

金虫 (小有名气)

引用回帖:
4楼: Originally posted by 7152075 at 2016-11-17 08:22:17
这个怪我了,内部文件那里的注释我是后添加上的,是个中文感叹号,改成英文感叹号就没问题了,sorry。
program example
    implicit none
    character( len=125 ) str,cstr
    integer i
    write( *,*  ...

那是我改成英文后的结果。。。

发自小木虫Android客户端
坚持,淡定,信念
5楼2016-11-17 09:09:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

问天阁

木虫 (正式写手)

6楼2016-11-17 09:34:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

7152075

铁杆木虫 (著名写手)

解决问题的方法比遇到的问题多

引用回帖:
5楼: Originally posted by 709944890 at 2016-11-17 09:09:03
那是我改成英文后的结果。。。
...

你用的什么编译器?以及你改的也不对,用我在4楼上面的那个不好使?我这头的CVF和IVF+VS两种编译器都可以。
Chemistry
7楼2016-11-17 10:19:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

709944890

金虫 (小有名气)

引用回帖:
7楼: Originally posted by 7152075 at 2016-11-17 10:19:06
你用的什么编译器?以及你改的也不对,用我在4楼上面的那个不好使?我这头的CVF和IVF+VS两种编译器都可以。...

我也不知道是什么编译器,就是Windows系统的Microsoft developer studio

发自小木虫Android客户端
坚持,淡定,信念
8楼2016-11-17 15:55:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

709944890

金虫 (小有名气)

引用回帖:
6楼: Originally posted by 问天阁 at 2016-11-17 09:34:36
借用机器符就行

不懂。。。。

发自小木虫Android客户端
坚持,淡定,信念
9楼2016-11-17 15:56:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

7152075

铁杆木虫 (著名写手)

解决问题的方法比遇到的问题多

引用回帖:
8楼: Originally posted by 709944890 at 2016-11-17 15:55:04
我也不知道是什么编译器,就是Windows系统的Microsoft developer studio
...

没用过,或许内部文件这个语法不支持也不好说(感觉不应该)。那我把你的代码给修改了,再试一试。
program example
    implicit none
    character( len=125 ) str
    integer i
    write(*,*) 'Input the adress:'
    read(*,*) str
    str=adjustl(trim(str)) !//修改了这里
    open(1,file=str )
    read(1,*) i
    write(*,*) i
    end program example
Chemistry
10楼2016-11-17 16:07:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 709944890 的主题更新
信息提示
请填处理意见