Fortran Coder

查看: 10238|回复: 5
打印 上一主题 下一主题

[求助] 子程序结构名称无效或丢失

[复制链接]

6

帖子

2

主题

0

精华

入门

F 币
37 元
贡献
17 点
跳转到指定楼层
楼主
发表于 2021-9-1 09:55:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
编译报错: error #6158: The structure-name is invalid or is missing.
但是鼠标移动到结构名称上面右键查询结构定义,结果没有跳转,不知道结构在哪定义的,也不知道调用什么子程序保证结构正常使用
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

2015

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1574 元
贡献
676 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2021-9-1 10:09:06 | 只看该作者
1. 您使用什么操作系统,什么编译器?什么编译环境?
2. 给出必要代码

6

帖子

2

主题

0

精华

入门

F 币
37 元
贡献
17 点
板凳
 楼主| 发表于 2021-9-1 10:26:43 | 只看该作者
[Fortran] 纯文本查看 复制代码
subroutine Renew_Wave
    !**********************************************************************
    !
    ! 定义子程序更新
    !
    !**********************************************************************
    implicit none
    ! local variables
    integer::wave_num!地震波定义
    integer::i,j
    real,dimension(1400)::wave_t,wave_v
    real,dimension(CalParams%PrescribedVelo%NNodePrescribedVelo,3)::Prevel
    wave_num=1400

    CalParams%PrescribedVelo%NodalPrescribedVelocityValue=Prevel

    do i = 1, CalParams%PrescribedVelo%NNodePrescribedVelo
        if (Prevel(i,1)==0.or.Prevel(i,2)==0.or.Prevel(i,3)==0) then!地震波触发条件,输入999
            open(10,file='v-t.txt',status='old')
            do j=1,wave_num
                read(10,*)wave_t(j),wave_v(j)
                if (j==CalParams%IStep) then! 时间步
                    CalParams%PrescribedVelo%NodalPrescribedVelocityValue(I, 1:NVECTOR)=wave_v(j)
                end if
            end do
            close (10)
        else
            CalParams%PrescribedVelo%NodalPrescribedVelocityValue(I, 1:NVECTOR) = CalParams%PrescribedVelo%NodalPrescribedVelocityValue(I, 1:NVECTOR)
        end if
    end do
    write(*,*)CalParams%PrescribedVelo%NodalPrescribedVelocityValue(1, 2)
    end subroutine Renew_Wave

windows操作系统,vs编译,只看到其中calparams的引用,但是转到定义转不过去,不知道在哪定义的

2015

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1574 元
贡献
676 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

地板
发表于 2021-9-1 10:54:57 | 只看该作者
从你给出的代码片段里,我也看不出来。
VS和Intel Fortran的嵌合,并不是特别完备的。很多时候 goto define 功能并不好用,这是正常现象。

6

帖子

2

主题

0

精华

入门

F 币
37 元
贡献
17 点
5#
 楼主| 发表于 2021-9-1 10:57:54 | 只看该作者
fcode 发表于 2021-9-1 10:54
从你给出的代码片段里,我也看不出来。
VS和Intel Fortran的嵌合,并不是特别完备的。很多时候 goto define ...

好吧,我试试别的编译器看能不能找到Calparams的定义,谢谢了

2015

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1574 元
贡献
676 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

6#
发表于 2021-9-1 11:44:00 | 只看该作者
你可以用搜索功能,或者按照语法的指示去找。比如 看看use了哪些module,顺着 module 里面看看。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-11-15 01:29

Powered by Tencent X3.4

© 2013-2024 Tencent

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