新人关于指针的问题
指针可以指向一个一维数组吗(不是数组中的一个数,是整个数组)? 我想对整个数组进行矢量计算。刚刚接触FORTRAN,很多不明白的地方,请多指教。program test
integer,target:: n(3)=(/1,2,3/)
integer,pointer::p(:)
p => n
print*,p
pause
end program
针对数组运算,ivf编译器会自动矢量化,用不着采用指针。 li913 发表于 2015-4-11 10:24
program test
integer,target:: n(3)=(/1,2,3/)
integer,pointer::p(:) ...
谢谢解答,再请教一下。
integer,pointer::p(:)的话,不就是三个指针了吗?
最初的想法是把一些向量存在二维数组里,知道行和列的话就可以取出这个向量,指针是不是实现不好?定义成四维的数组会好一点吗? integer,pointer::p(:)
是一个指针,不是三个指针。
Fortran 只有“指向数组的指针”,而没有“指向变量的指针数组”。
知道行列,取出向量,不需要指针既可实现。
integer :: a(2,2) = reshape( , )
a(:,1) 就是第一行
a(:,2) 就是第二行
a(1,:) 就是第一列
a(2,:) 就是第二列 fcode 发表于 2015-4-11 14:22
integer,pointer::p(:)
是一个指针,不是三个指针。
啊,我明白了,是一个指针。多谢指教,十分感激。:-D
页:
[1]