public class Account
{
public float div(float a, float b)
{
return a/b;
}
}
private void button1_Click(object sender, System.EventArgs e)
{
Account ac = new Account();
float i = ac.div(3,0);
MessageBox.Show(i.ToString());
}在上面这种情况下,c#不会报错,但在下面的这种情况,却报错,为何?
public class Account
{
public int div(int a, int b)
{
return a/b;
}
}
private void button1_Click(object sender, System.EventArgs e)
{
Account ac = new Account();
int i = ac.div(3,0);
MessageBox.Show(i.ToString());
}int形,除零会报错,float形除零却不会报错.
为何?主要是因为我在用NUnit作单元测试,测试边界值时遇到的.
有大侠可以说说吗?
{
public float div(float a, float b)
{
return a/b;
}
}
private void button1_Click(object sender, System.EventArgs e)
{
Account ac = new Account();
float i = ac.div(3,0);
MessageBox.Show(i.ToString());
}在上面这种情况下,c#不会报错,但在下面的这种情况,却报错,为何?
public class Account
{
public int div(int a, int b)
{
return a/b;
}
}
private void button1_Click(object sender, System.EventArgs e)
{
Account ac = new Account();
int i = ac.div(3,0);
MessageBox.Show(i.ToString());
}int形,除零会报错,float形除零却不会报错.
为何?主要是因为我在用NUnit作单元测试,测试边界值时遇到的.
有大侠可以说说吗?
float.PositiveInfinity 或者 float.NegativeInfinity
也就是正无穷大或者负无穷大
你可以用 == 的方法来判断或者使用 float.IsInfinity() 方法来判断是否为无穷大