C语言隐式数据类型转换规则
(2013-07-08 17:44:34)
标签:
表达式语言结果操作数术语 |
分类: 软件编程 |
1.若任意一个操作数的类型为long double,则表达式中其他操作数都转化为long double类型;
2.否则,若任意一个操作数的类型为double,则表达式中其他操作数都转化为double类型;
3.否则,若任意一个操作数的类型为float,则表达式中其他操作数都转化为float类型;
4.否则,若任意一个操作数的类型为unsigned long int,则表达式中其他操作数都转化为unsigned long int类型;
5.否则,若任意一个操作数的类型为long int,其他操作数中有unsigned int, 如果long int能容纳unsigned int所有的值,那么unsigned int转化为long int类型,如果long int不能容纳unsigned int的值,那么所有的类型都转化为long int类型;
6.否则,若任意一个操作数的类型为long int,则其他操作数都转化为long int类型;
7.否则,若任意一个操作数的类型为unsigned int,则其他操作数都转化为unsigned int。
比如下面的代码,会输出什么结果呢?
int main()
{
}