означает, что он объявляет внешнюю функцию, а не локальную переменную.

от вопрос уже есть ответ здесь:

Почему эта функция объявлена ​​внутри модуля и затем используется где-то еще в том же модуле, который не виден компоновщику? 2 ответа

Я пишу модуль в Fortran90, в основном я определил функцию внутри модуля и подпрограмму, которая использует функцию. Вот выдержка из модуля

module Mesh_io
  implicit none
  private
contains
  integer function findkey ( )
    content of this function
  end function
  subroutine getNumber_Mesh ()
    integer :: findkey
    content of the routine
  end subroutine getNumber_Mesh
end module

При компиляции я получаю следующий вывод:

objects/Main.o: In function `__mesh_io_MOD_getnumber_mesh':
Main.f90:(.text+0x9e): undefined reference to `findkey_'

Как видите, функция содержится в модуле, но по какой-то причине компилятор не может ее найти.

Ответы на вопрос(1)

Ваш ответ на вопрос