vb中
Sub CoordCalcul(ByRef k As Integer, ByRef f() As Double)
Dim c As Object
Dim i As Object
For i = k To na
c = pi * f(i) / 180
x(i + 1) = x(i) + s(i) * System.Math.Cos(c)
y(i + 1) = y(i) + s(i) * System.Math.Sin(c)
Next i
End Sub
转换成C#
void CoordCalcul(int k,double[] f)
{
object c;
object i;
for( i = k;i<=na;i++)
{
c =System.Math.PI * f[i] / 180;
x[i + 1] = x[i] + s[i] * System.Math.Cos(c);
y[i + 1] = y[i] + s[i] * System.Math.Sin(c);
}
}
结果弹出很多错误
各位高手帮帮忙,谢谢!!!
Sub CoordCalcul(ByRef k As Integer, ByRef f() As Double)
Dim c As Object
Dim i As Object
For i = k To na
c = pi * f(i) / 180
x(i + 1) = x(i) + s(i) * System.Math.Cos(c)
y(i + 1) = y(i) + s(i) * System.Math.Sin(c)
Next i
End Sub
转换成C#
void CoordCalcul(int k,double[] f)
{
object c;
object i;
for( i = k;i<=na;i++)
{
c =System.Math.PI * f[i] / 180;
x[i + 1] = x[i] + s[i] * System.Math.Cos(c);
y[i + 1] = y[i] + s[i] * System.Math.Sin(c);
}
}
结果弹出很多错误
各位高手帮帮忙,谢谢!!!
Public s(300) As Double
Public x(300) As Double
Public y(300) As Double
c#里
public double[] s=new double[300];
public double[] x=new double[300];
public double[] y=new double[300];
长度应该是相同的提示i不能做++运算
Dim c As Object在C#里不知道object c;对不对
象object i; 可以這樣for( int i = k;i <=na;i++) {}
自己再仔細檢查一下。。
{
object c;
object i;
for( i = k;i <=na;i++)
{
c =System.Math.PI * f[i] / 180;
x[i + 1] = x[i] + s[i] * System.Math.Cos(c);
y[i + 1] = y[i] + s[i] * System.Math.Sin(c);
}
}
1. 参数是引用的void CoordCalcul(ref int k,double[] f)
2. object i
for( i = k;i <=na;i++) //i++是错误的,是object对象
x[i + 1] = x[i] + s[i] * System.Math.Cos(c); //i+1错误,i做下标错误
y[i + 1] = y[i] + s[i] * System.Math.Sin(c); //i+1错误 ,i做下标错误
Dim c As Object
Dim i As Object
For i = k To na
c = pi * f(i) / 180
x(i + 1) = x(i) + s(i) * System.Math.Cos(c)
y(i + 1) = y(i) + s(i) * System.Math.Sin(c)
Next i
End Sub
-------------
就算是VB...这也是一段糟糕且错误的代码...先打基础吧...
object i; i做循环用,为什么要object呀?给自己添加麻烦, int i 不就ok了
for( i = k;i <=na;i++)
k是int型,i是object型当然错了,
Public s(300) As Double c#如下定义s只有300个对象,差一个
public double[] s=new double[300];