Array concatenation: Difference between revisions

Content added Content deleted
mNo edit summary
Line 1,055: Line 1,055:
implicit none
implicit none


integer, dimension(3) :: a = [ 1, 2, 3 ]
integer, dimension(3) :: a = (/1, 2, 3/)
integer, dimension(3) :: b = [ 4, 5, 6 ]
integer, dimension(3) :: b = (/4, 5, 6/)
integer, dimension(:), allocatable :: c
integer, dimension(:), allocatable :: c, d
allocate(c(size(a)+size(b)))
allocate(c(size(a)+size(b)))
c(1:size(a)) = a
c(1 : size(a)) = a
c(size(a)+1:size(a)+size(b)) = b
c(size(a)+1 : size(a)+size(b)) = b

write(*,*) c
write(*,*) c

! alternative
d = (/a, b/)
write(*,*) d

deallocate(c)
deallocate(d)


end program Concat_Arrays</lang>
end program Concat_Arrays</lang>
Line 1,071: Line 1,077:
implicit none
implicit none


integer, dimension(3) :: a = [ 1, 2, 3 ]
integer, dimension(3) :: a = [1, 2, 3]
integer, dimension(3) :: b = [ 4, 5, 6 ]
integer, dimension(3) :: b = [4, 5, 6]
integer, dimension(:), allocatable :: c
integer, dimension(:), allocatable :: c, d
allocate(c(size(a)+size(b)))
c = [a, b]
c[1 : size(a)] = a

c[size(a)+1 : size(a)+size(b)] = b
write(*,*) c
write(*,*) c

! alternative
d = [a, b]
write(*,*) d

deallocate(c)
deallocate(d)


end program Concat_Arrays</lang>
end program Concat_Arrays</lang>