kyra 发表于 2023-3-26 15:14:57

风平老涡 发表于 2023-3-26 11:50
read语句不能直接读取type类变量。




不含可分配数组和指针的派生类型是可以直接整体读写的。

愤怒的三炮 发表于 2023-3-27 00:19:56

kyra 发表于 2023-3-26 11:42
改成
read(fid_segy) traces(i)%header ,traces(i)%idata ! 读取前500道
就行了。


谢谢解答!
但感觉这样的特性好奇怪,不知道其它语言有没有这种限制。

kyra 发表于 2023-3-27 08:30:40

抱歉,我对其他语言了解很少。
但是 C/C++ 也有同样的问题,如果包含指针(指向一个分配出来的数组),那么读取的是指针而不是指针指向的目标。
此外,C/C++的原生指针(非容器类),编译器并不存储指向目标数组的大小,所以更没法整体读取数组。
页: 1 [2]
查看完整版本: Type 包含 allocatable 数组