C++面试题

当前位置: 面试问题网 > C++面试题 > 为什么如下的代码int a=100,b=100;long int c=a * b;不能工作

为什么如下的代码int a=100,b=100;long int c=a * b;不能工作

C++面试题  手机阅读
根据C 的内部类型转换规则, 乘法是用int 进行的, 而其结果可能在转换为long 型并赋给左边的c 之前溢出或被截短。可以使用明确的类型转换, 强迫乘法以long 型进行:
   long int c = (long int)a * b;
   注意, (long int)(a * b) 不能达到需要的效果。
   当两个整数做除法而结果赋与一个浮点变量时, 也有可能有同样类型的问题,解决方法也是类似的。

【为什么如下的代码int a=100,b=100;long int c=a * b;不能工作】相关文章

1. 为什么如下的代码int a=100,b=100;long int c=a * b;不能工作

2. 我有一个char * 型指针正巧指向一些int 型变量, 我想跳过它们。 为什么如下的代码((int *)p)++; 不行?

3. 什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?

4. 代码中finally中的代码会不会执行

5. 我想声明一个指针并为它分配一些空间, 但却不行。这些代码有什么 问题?char *p; *p = malloc(10);

6. 请问如下代码执行后a和b的值分别是什么

7. 使用C#编写创建一个线程的代码

8. 软件测试LoadRunner面试题:What is the difference between standard log and extended log?

9. Java面试题:请说出如下代码的输出结果

10. Java面试题:说出如下代码的执行结果

本文来源:https://www.mianshiwenti.com/a13187.html

点击展开全部

《为什么如下的代码int a=100,b=100;long int c=a * b;不能工作》

将本文的Word文档下载到电脑,方便收藏和打印

推荐程度:

进入下载页面
上一篇:函数只定义了一次, 调用了一次, 但编译器提示非法重定义了-什么问题? 下一篇:*p++ 自增p 还是p所指向的变量

﹝为什么如下的代码int a=100,b=100;long int c=a * b;不能工作﹞相关内容

「为什么如下的代码int a=100,b=100;long int c=a * b;不能工作」相关专题

类型转换
复制网址 收藏网址 分享到微信 分享到微博 分享到QQ

其它栏目

软件工程师面试题 软件测试面试题 网络管理员面试题 java面试题 .NET面试题 PHP面试题 C#面试题 C++面试题 Delphi面试题 Ruby面试题 Python面试题 Javascript面试题 android面试题 iOS面试题 jQuery面试题 Linux/Unix面试题 DBA面试题

也许您还喜欢