本文主要是介绍C++范围不相符变量的赋值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
当超出某一类型范围的值给此类型变量赋值或某一负数给某一无符号数赋值时,其结果会怎么样呢?
(1)超出某一类型范围的值给此类型变量赋值时
变量的值 = 超出某一类型范围的值 % 此类型可以表示的数值的个数
例:char a = 260 ; 输出 a = 4 ;
#include "stdafx.h"
#include<iostream>
#include<iomanip>
using namespace std;int _tmain(int argc, _TCHAR* argv[])
{char a=260;cout<<(int)a<<endl;system("pause");return 0;
}
(2)某一负数给某一无符号数赋值时
无符号变量的值 = (某一负数 % 此类型可以表示的数值的个数) + 此类型可以表示的数值的个数
例:unsigned char a = -2 ; 输出 a = 254 ;
#include "stdafx.h"
#include<iostream>
#include<iomanip>
using namespace std;int _tmain(int argc, _TCHAR* argv[])
{unsigned char a=-2;cout<<(int)a<<endl;system("pause");return 0;
}
参考链接:
http://www.cnblogs.com/volcanol/p/3987121.html
这篇关于C++范围不相符变量的赋值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!