我是一名初学者,刚涉及C#没多久.只有20分。不知道有没有高手可以帮我下。有人说这些问题有点钻牛角尖,汗,不是要钻,只是想弄明白,如果不彻底明白,一个模模糊糊的概念有何用?到时编写还不漏洞百出?希望有人能给我解答,哪怕只有一题!谢谢~~在自学当中,我碰到许多问题.朋友你能帮我解答下吗?非常感谢!!非常感谢至极.首先声明,关于这些问题,我都是有过长时间去找答案,但是都无功而返,绝不是碰到什么问题就连查资料也不查的问你们。还有一点,如果我问的问题过于笨了,请你们不要见怪,有可能是书上没解释清楚,也可能我过于愚蠢的原因。总之,我是抱这一颗求知的心。谢谢~~··关于单精度浮点与双精度浮点:·· 在单精度后加E,双精度加F.请问他们的取值范围是如何算的?什么1.5*10^-45……1.5*10^38,哪位朋友能言简意骇的说明下? 还有一点,网上查资料如下: ·IEEE单精度格式具有24位有效数字,并总共占用32 位。IEEE双精度格式具有53位有效数字精度,并总共占用64位。 · ·说明:基本浮点格式是固定格式,相对应的十进制有效数字分别为7位和17位· 也就是说,1.123456和1.123456E是一样的意思?
1.12E3,代表的是什么意思?1.12E是单精度?而3可能是双精度或单精度?
如果变成1.1234567还是单精度范围?而1.12345678则为双精度了??
··关于类型转换的隐式转换,我的理解是,当A类型转换为B类型,A的值必须在B类型值范围之内.对吗??··
··关于显式转换:··请问,在C#的显式转换中.
A=(byte)B;
和
A=convert.ToByte(B);
有什么区别吗?能告诉我,什么情况下用第一种表达式好,什么情况用第二种的CONVERT.?还是说,可以随意?而在其中,用checked和unchecked,表达式溢出时的关键字,
在C#入门经典中文版第3版的例子中,使用checked会导致崩溃??为什么?
如改成unchecked却和没有改一样.我对此非常不解,书中也没有过多解释.让我看的云里雾里的。请问这两个关键字该做何理解?
··关于枚举和结构:··说实在,这一章似乎到了难点上了,我几乎不懂枚举。枚举的作用是什么?enum one1:byte
{
one=1,
tow=2,
there=3,
}
和 “byte one=1,tow=2,there=3;”两者有差别?或者可以理解为,枚举可以全局使用,而定义的量只能在一个镶套里运用?如果不是……汗,那我就纳闷了,两者有区别?猛地汗……关于结构,我看的有点明白了,但结构的作用到底是什么??
1.12E3,代表的是什么意思?1.12E是单精度?而3可能是双精度或单精度?
如果变成1.1234567还是单精度范围?而1.12345678则为双精度了??
··关于类型转换的隐式转换,我的理解是,当A类型转换为B类型,A的值必须在B类型值范围之内.对吗??··
··关于显式转换:··请问,在C#的显式转换中.
A=(byte)B;
和
A=convert.ToByte(B);
有什么区别吗?能告诉我,什么情况下用第一种表达式好,什么情况用第二种的CONVERT.?还是说,可以随意?而在其中,用checked和unchecked,表达式溢出时的关键字,
在C#入门经典中文版第3版的例子中,使用checked会导致崩溃??为什么?
如改成unchecked却和没有改一样.我对此非常不解,书中也没有过多解释.让我看的云里雾里的。请问这两个关键字该做何理解?
··关于枚举和结构:··说实在,这一章似乎到了难点上了,我几乎不懂枚举。枚举的作用是什么?enum one1:byte
{
one=1,
tow=2,
there=3,
}
和 “byte one=1,tow=2,there=3;”两者有差别?或者可以理解为,枚举可以全局使用,而定义的量只能在一个镶套里运用?如果不是……汗,那我就纳闷了,两者有区别?猛地汗……关于结构,我看的有点明白了,但结构的作用到底是什么??
解决方案 »
- vs add-in Context Menu 为何不能触发事件?
- winfrom treeview 节点出错
- c# 验证码怎么实现
- 我先定义了一个类Line,然后在form中绘制了一条直线,怎么样才能用鼠标拖动这条直线呢 第二个问题 ,如何在web或aspnet中绘制动态图像呢
- 接口中可以定义静态的方法让子类实现吗?或者说子类如何把接口中的方法是以静态的方式来实现?
- 超基础的问题,谢谢解答!
- 帮帮忙 一个简单的DataSet find DataRow的问题
- TreeNode的验证
- 在winform中 关于刷新客户端数据
- 事件问题
- DataGridView动态添加行
- SOL2000+C#做的网站.怎么运行啊?
你就可以定义成枚举了,用的时候就不用记得好的号是多少,直接 枚举名.汉族 就可以了
把复杂的不容易记的数字 换成容易理解的汉字
还有 你定义错误的时候 可以定义一个error枚举,里面有几条错误提示,在用的时候打error.提示语句 这样也很方便啊 。举的例子不好,希望能帮上你忙
别的问题不敢乱说 楼下的说吧
没听说要加E啊,只知道E用作指数表示。8好14,我菜。
单精度和双精度我现在才明白过来...
我本以为E是代表单精度,现在才知道是代表指数.
谢谢大家不吝教导.谢谢
按我的理解,隐式转换的前提条件是从子类型转换到基类型。
所有符合这个条件的可以隐式转换。显示转换那个问题我理解的不深,个人感觉两种方式差不多。
猜测可能涉及装箱和拆箱的问题。其他问题观望。
A=(byte)B;
和
A=convert.ToByte(B);
有什么区别吗?能告诉我,什么情况下用第一种表达式好,什么情况用第二种的CONVERT.?还是说,可以随意?强制类型转化可以在编译的时候声明强制转换而不引起错误,是否可以转换取决于A和B的实际类型,强制类型转换成功有以下原则:
1、类型相同的
2、本身就符合隐式转换条件
3、类型定义了强制转换运算符,并且在定义的可转换类型之中。convert类的转换机制是不同,他所能转换的类型是系统预定义的。从语义的角度来说,强制类型转换所转换的是相容的类型(也就是可转换的类型之间具有同构性质),而Convert应该称为变换,是一种数据类型完全变成另外一种数据类型的表达。
//////////////////////////////////////////////////////////////////////////////////
··关于枚举和结构:··说实在,这一章似乎到了难点上了,我几乎不懂枚举。枚举的作用是什么?enum one1:byte
{
one=1,
tow=2,
there=3,
}
和 “byte one=1,tow=2,there=3;”两者有差别?或者可以理解为,枚举可以全局使用,而定义的量只能在一个镶套里运用?如果不是……汗,那我就纳闷了,两者有区别?猛地汗……关于结构,我看的有点明白了,但结构的作用到底是什么??枚举你可以认为就是某些常量的助记名字,枚举只是定义了一个类型,而不是实例,你不能混淆类型和变量、常量,变量、常量都具有某种类型。结构是值类型的,默认在栈分配内存,一般的类是引用类型,默认在堆分配内存的,和C++完全不同,和object pascal如出一辙,到底是同一个人写的编译器。
{
int val = 2147483647 * 2;
}
结果val=-2,checked
{
int val = 2147483647 * 2;
}
会丢出OverflowException