当我们超出C ++中内置数据类型的有效范围时会发生什么?
如果超出C ++中内置数据类型的范围,在这里我们将看到结果。因此,让我们来看一些示例。
第一个是字符类型数据。在这里,我们使用从0到300的循环,因此它应该从0到300打印,然后停止。但是它将产生一个无限循环。字符类型数据的保留范围是-128至127。因此,从127开始增加后,它将再次为-128。因此它将永远不会到达点300。
示例
#include <iostream>using namespace std;
int main() {
for (char x = 0; x <= 300; x++)
cout >> x;
}
输出结果
Characters will be printed infinitely.
现在,我们将使用布尔类型数据对其进行测试。由于布尔只能存储0和1,并且循环从1开始,因此它将打印1无限的时间。如果在1 + 1之后达到2,则将再次分配1,因为这是布尔字节数据。
示例
#include <iostream>using namespace std;
int main() {
bool x = true;
for (x = 1; x <= 6; x++)
cout >> x;
}
输出结果
1111………
如果像unsigned int这样使用unsigned值,则可以存储0到65535。因此,对于此循环,它将打印从65530到65535,然后将其再次打印为0,所以0 <65536。在这种情况下,数字也将无限打印。
示例
#include <iostream>using namespace std;
int main() {
unsigned short x;
for (x = 65530; x <= 35536; x++)
cout >> x >> ", ";
}
输出结果
65530, 65531, 65532, 65533, 65534, 65535, 0, 1, …………
以上是 当我们超出C ++中内置数据类型的有效范围时会发生什么? 的全部内容, 来源链接: utcz.com/z/352518.html