gpt4 book ai didi

c - C 中的 "dimension"和 "parameter"等效命令

转载 作者:太空宇宙 更新时间:2023-11-04 08:29:46 26 4
gpt4 key购买 nike

我不太熟悉编写 C,但我目前正在将一些代码从 FORTRAN 翻译成 C。我理解两者的含义,但我不确定如何用 C 编写它。这是我的代码的一小部分在 Fortran 中:

program main
parameter (g=9.8,nx=102,ny=100,r13=1./3.,r23=2./3.)
dimension u0(0:nx+1,0:ny+1,3),ux(0:nx+1,0:ny+1,3)
dimension uy(0:nx+1,0:ny+1,3),uxx(0:nx+1,0:ny+1,3)
dimension uxy(0:nx+1,0:ny+1,3),uyy(0:nx+1,0:ny+1,3)

最佳答案

parameter (g=9.8,nx=102,ny=100,r13=1./3.,r23=2./3.)

可以翻译成#define语句。

#define g 9.8
#define nx 102
#define ny 100
#define r13 (1./3.)
#define r23 (2./3.)

dimension u0(0:nx+1,0:ny+1,3),ux(0:nx+1,0:ny+1,3)

可以翻译成:

double u0[nx+2][ny+2][3];
double u1[nx+2][ny+2][3];

不过,您必须非常小心地使用索引。在 FORTRAN 中,u0(0, 0, 3) 是有效项。在 C 中,您必须使用 u0[0][0][2] 来访问相应的项。

关于c - C 中的 "dimension"和 "parameter"等效命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28949598/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com