subroutine prob(m, n) | |
implicit none | |
integer, intent(in) :: m | |
integer, intent(out) :: n | |
integer, save :: saved = 10 | |
target :: saved | |
integer, pointer :: p_saved | |
integer, parameter :: ROWS = 5, COLS = 7 | |
real :: matrix(ROWS, COLS) | |
p_saved => saved | |
matrix(:, :) = 0.0 !<<<<<START | |
n = 5 * m | |
saved = 2 | |
!p_saved => saved | |
!p_saved = p_saved + 1 | |
print *, n, m, saved !<<<<<END | |
print *, n, m, saved, p_saved | |
end subroutine | |
program main; call prob(3, n); call prob(3, n); print *, n; call flush; stop; end program |