首先,我需要指出我之前从未编写过Visual Basic
。
我有一个旧电子表格,其中包含一些明显用Visual Basic
编写的函数。一个示例函数是:
Function Helmert_X(X, Y, Z, DX, Y_Rot, Z_Rot, s)
'Computed Helmert transformed X coordinate.
'Input: - _
cartesian XYZ coords (X,Y,Z), X translation (DX) all in meters ; _
Y and Z rotations in seconds of arc (Y_Rot, Z_Rot) and scale in ppm (s).
'Convert rotations to radians and ppm scale to a factor
Pi = 3.14159265358979
sfactor = s * 0.000001
RadY_Rot = (Y_Rot / 3600) * (Pi / 180)
RadZ_Rot = (Z_Rot / 3600) * (Pi / 180)
'Compute transformed X coord
Helmert_X = X + (X * sfactor) - (Y * RadZ_Rot) + (Z * RadY_Rot) + DX
End Function
我试图将这些函数转换为C.我已经差不多完成但我想要做的是构建一个用各种参数调用函数的可视化基础项目。然后我将有一个使用相同参数的C项目,并检查C获得与Visual Basic相同的答案。
当我将Visual Basic函数放入Visual Studio中的模块时,我遇到了很多错误。首先,评论不会全部注册为评论,显然需要声明变量。
我是否正确使用这些功能?无论如何在代码中使用它们而不修改它们?我可以使用Excel通过函数运行测试参数吗?
答案 0 :(得分:0)
似乎您需要声明该函数中存在的所有变量。尝试在评论后添加这些行:
Dim Pi As Double
Dim sfactor As Double
Dim RadY_Rot As Double
Dim RadZ_Rot As Double
您还可以为函数附带的变量指定类型,以及函数本身:
Function Helmert_X(X as Double, Y as Double, Z as Double, DX as Double, Y_Rot as Double, Z_Rot as Double, s as Double) as Double
让我知道它是否有效或是否还有问题。