社区
C#
帖子详情
int i = -6/7; i 结果是多少?
r_swordsman
2008-06-12 08:31:10
int i = -6/7; i 结果是多少?
不要运行,说出结果,并说明原因。
...全文
384
20
打赏
收藏
int i = -6/7; i 结果是多少?
int i = -6/7; i 结果是多少? 不要运行,说出结果,并说明原因。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
syc958
2008-06-14
打赏
举报
回复
你理解错了!我说的0是结果!呵呵!
r_swordsman
2008-06-13
打赏
举报
回复
[Quote=引用 15 楼 zswang 的回复:]
0
┌───────────────────┒
│!提示 _□×┃
│ ┃
│本回复已被系统屏蔽,给分结贴后方可查看┃
│ ┃
│ 加 分 ┃ 结 帖 ┃ ┃
│ ━━━━━┛ ━━━━━┛ ┃
┕━━━━━━━━━━━━━━━━━━━┛
[/Quote]
汗
hanjoe109
2008-06-13
打赏
举报
回复
[Quote=引用 10 楼 lmisbest 的回复:]
引用 6 楼 sjin0606 的回复:
去整数部分,.NET平台下是0
[/Quote]
onthebox
2008-06-13
打赏
举报
回复
就是零
原因:语法明确,无二异性
r_swordsman
2008-06-13
打赏
举报
回复
C# 语言规范:
7.7.2 除法运算符
对于 x / y 形式的运算,应用二元运算符重载决策(第 7.2.4 节)以选择特定的运算符实现。操作数转换为所选运算符的参数类型,结果的类型是该运算符的返回类型。
下面列出了预定义的除法运算符。这些运算符均计算 x 和 y 的商。
• 整数除法:
int operator /(int x, int y);
uint operator /(uint x, uint y);
long operator /(long x, long y);
ulong operator /(ulong x, ulong y);
如果右操作数的值为零,则引发 System.DivideByZeroException。
除法将结果舍入到零,并且结果的绝对值是小于两个操作数的商的绝对值的最大可能整数。
当两个操作数符号相同时,结果为零或正;当两个操作数符号相反时,结果为零或负。
如果左操作数为最小可表示 int 或 long 值,右操作数为 –1,则发生溢出。在 checked 上下文中,这会导致引发 System.ArithmeticException(或其子类)。在 unchecked 上下文中,它由实现定义为或者引发 System.ArithmeticException(或其子类),或者不以左操作数的结果值报告溢出。
也就是说,
结果的绝对值 是 商的绝对值的 最大可能的 整数。
王集鹄
2008-06-12
打赏
举报
回复
0
┌───────────────────┒
│
!提示
_□
×
┃
│
┃
│
本回复已被系统屏蔽,给分结贴后方可查看
┃
│
┃
│
加 分
┃
结 帖
┃
┃
│
━━━━━┛ ━━━━━┛
┃
┕━━━━━━━━━━━━━━━━━━━┛
r_swordsman
2008-06-12
打赏
举报
回复
[Quote=引用 11 楼 syc958 的回复:]
哈哈!学c的时候难道没有学过运算符的优先级????最高的为双精度!不知道的话就好好看看书吧!
[/Quote]
呵呵,我知道运算符的优先级,但不知道数字 0 还有优先级。
syc958
2008-06-12
打赏
举报
回复
0 类型也有优先级!都是int的话,结果改为int!
Coco孙
2008-06-12
打赏
举报
回复
报错
sjin0606
2008-06-12
打赏
举报
回复
去整数部分,.NET平台下是0;
声明的 INT类型的
panw520
2008-06-12
打赏
举报
回复
[Quote=引用 4 楼 vrhero 的回复:]
int 与int 相除得到的结果还是int 不会有余数的,也不会四舍五入
---------
int与int相除得到的结果是double...然后banker舍入...再隐式转换为int...结果是0...
[/Quote]
vrhero
2008-06-12
打赏
举报
回复
int 与int 相除得到的结果还是int 不会有余数的,也不会四舍五入
---------
int与int相除得到的结果是double...然后banker舍入...再隐式转换为int...结果是0...
chengwenying
2008-06-12
打赏
举报
回复
我想问下 在c#中
int 能 / int 吗?
delphi中只能 int div int
我刚从delphi板块过来的,目前刚接触 c#
Deathsign
2008-06-12
打赏
举报
回复
0```
int / int 只取结果的整数部分··
chengwenying
2008-06-12
打赏
举报
回复
在delphi中 int / int 是不对的
/ 之后的结果是浮点型
应该用 int div int
int i= -6 div 7 结果是-0 也就是0
int 与int 相除得到的结果还是int 不会有余数的,也不会四舍五入
不知道我说的跟c#中有区别吗?
conan304
2008-06-12
打赏
举报
回复
0
linux_ch
2008-06-12
打赏
举报
回复
0 /只是對整型的
syc958
2008-06-12
打赏
举报
回复
哈哈!学c的时候难道没有学过运算符的优先级????最高的为双精度!不知道的话就好好看看书吧!
小明aa
2008-06-12
打赏
举报
回复
[Quote=引用 6 楼 sjin0606 的回复:]
去整数部分,.NET平台下是0
[/Quote]
r_swordsman
2008-06-12
打赏
举报
回复
[Quote=引用 8 楼 syc958 的回复:]
0 类型也有优先级!都是int的话,结果改为int!
[/Quote]
优先级?
Java 中 i=i++; 结果
Java 中运行以下代码 :
int
i = 0; i++; System.out.pr
int
ln("i的值是 : " + i); 根据我们通常所知道的后自增先使用后增加的道理 , i++ 在使用后i自身会增加一个数值 , 初始值为 0 时 , 自增后就是 1 , 那么输出的结果应该是1 , 但实际上这题的结果却是 0 : i的值是 : 1 这是因为 JVM 在处理 i = i++; 时 , ...
如何理解
int
i=1;i=i++;
如何理解
int
i=1;i=i++; 1、引入两个概念:局部变量表和操作数栈 栈帧(Stack Frame): 是用于支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区的虚拟机栈(Virtual Machine Stack)的栈元素。栈帧存储了方法的局部变量表,操作数栈,动态连接和方法返回地址等信息。第一个方法从调用开始到执行完成,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过...
自增与自减的机制——为什么
int
i = 0; i = i++; i 的结果为0?
1.问题 Java 中运行以下代码 : public static
int
test() {
int
i = 0; i = i++; return i; } 返回结果为:0 2.JVM执行的代码 直接在Windows命令窗口中使用 javap -c XXX 查看JVM执行的代码: public static
int
test(); Code: 0: iconst_0 ...
int
i=0;对i=i++多次循环后为什么i结果为0
今天同事考我一个题求下面代码的结果,我以为是99,没想到运行结果是0,后来百度了下原来是java底层jvm执行方式导致的。 public class JTest { public static void main(String[] args) {
int
i=0; for (
int
n=0;n<100;n++){ i=i++;...
Java 中
int
i = 0; i = i ++;为什么i还等于0
看到过的一个说法: 对语句进行拆解 左值i先将值赋给temp,然后自加,最后temp赋值给i; 在Java中的确是这么做的,具体步骤如下 注:本文解释只适合Java。 实际执行步骤 编译后代码的解释,参考 https://blog.csdn.net/xialei199023/article/details/76383013 先定义如下一个类: public class Test{ void te...
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章