2

使用 g95 编译器,我收到一条错误消息:

ERROR: Procedure attribute conflicts with INTENT attribute in 'quantityarray'

我试图找出数组的总和。这是出现此错误的子例程:

SUBROUTINE findTotals(pricearray,quantityarray,totalprice, totalquantity)

INTEGER, INTENT(IN)::quantityarray
REAL, INTENT(IN):: pricearray
INTEGER, INTENT(OUT)::totalquantity
REAL, INTENT(OUT)::totalprice


totalquantity = SUM(quantityarray)
totalprice = SUM(pricearray)


END SUBROUTINE

非常感谢您的宝贵时间。

4

1 回答 1

2
program SummingAnArray
implicit none
integer, dimension(10) :: array=(/ (i, i=1,10) /)
integer :: i, Total

call VectorSum(array,Total)
print *,Total
read(*,*)



contains
    !===================================================
    subroutine VectorSum(Vector,Total)
    implicit none
    integer, intent(in), dimension(:) :: Vector
    integer, intent(out) :: Total

    Total = SUM(Vector)
    end subroutine VectorSum
    !===================================================
end program SummingAnArray

这也许是您希望实现的目标吗?

于 2011-04-18T13:41:49.923 回答