在Fortran中,動態內存分配可以通過ALLOCATE和DEALLOCATE來實現。ALLOCATE用于動態分配內存,而DEALLOCATE用于釋放動態分配的內存。
下面是一個簡單的示例,演示了如何在Fortran中進行動態內存分配:
program dynamic_memory_allocation
implicit none
integer, allocatable :: arr(:)
integer :: n
! 獲取用戶輸入的數組大小
print *, "Enter the size of the array:"
read *, n
! 動態分配內存
allocate(arr(n))
! 將數組初始化為0
arr = 0
! 打印數組內容
print *, "Array elements:"
print *, arr
! 釋放動態分配的內存
deallocate(arr)
end program dynamic_memory_allocation
在上面的示例中,用戶輸入一個數組的大小,然后使用ALLOCATE動態分配內存來創建一個大小為n的整數數組。然后將數組初始化為0,并打印數組的內容。最后使用DEALLOCATE釋放動態分配的內存。
值得注意的是,動態內存分配在Fortran中需要謹慎使用,避免內存泄漏和內存溢出的問題。在使用ALLOCATE分配內存后,一定要記得使用DEALLOCATE釋放內存,以避免內存泄漏。