colitas 发表于 2008-9-18 10:28:18

如何在两个子程序间共享变量?

是在每个子程序中都用common x1,x2,就可以在其中一个子程序中引用另一个子程序的x1,x2的值了吗?
很急!非常感谢!

cdstudio 发表于 2008-9-18 14:35:01

写入中间文件

carpenter 发表于 2008-9-18 15:48:24

"Module " may be another option.

colitas 发表于 2008-9-18 20:46:42

用common怎么实现?

aogudusi 发表于 2008-9-18 22:14:40

用common 语句, 设置公用区,推荐使用有名公用区。
举个例子,在两个子程序XXX_1 和 XXX_2 之间,共享三个变量N_NODE, N_ELE, N_GAUSS
解决办法: 设置有名公用区公用区PROG_DATA
说明: common公用区里的变量,在整个Abaqus执行的全过程都保留,相当于可以看作一种“超级全局变量”

SUBROUTINE XXX_1
.......
COMMON /PROG_DATA/ N_NODE, N_ELE, N_GAUSS
........
END SUBROUTINE XXX_1


SUBROUTINE XXX_2.......
COMMON /PROG_DATA/ N_NODE, N_ELE, N_GAUSS
........
END SUBROUTINE XXX_2

colitas 发表于 2008-9-19 12:56:31

解释的很清楚,非常感谢!

jinqi1984 发表于 2009-4-1 16:30:26

多谢aogudusi 的解释,小弟最近对变量共享也很迷惑,现在看到您的解释,一目了然了。。再次感谢

shuang_28 发表于 2022-1-30 20:52:03

谢谢各位大神,学习了!

renyx 发表于 2022-2-12 16:32:25

这个很有用,谢谢!
页: [1]
查看完整版本: 如何在两个子程序间共享变量?