请问关于c的具体应用场景有哪些?

2026-05-27 06:180阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1121个文字,预计阅读时间需要5分钟。

请问关于c的具体应用场景有哪些?

checked和unchecked关键字用于限制检查或允许未检查的溢出;如果使用了checked,发生溢出会抛出OverflowException;如果使用了unchecked,则不会检查溢出,算错了也不会报错。

checked 和 unchecked关键字用来限定检查或者不检查数学运算溢出的;如果使用了checked发生数学运算溢出时会抛出OverflowException;如果使用了unchecked则不会检查溢出,算错了也不会报错。

1. 一段编译没通过的代码

int a = int.MaxValue * 2;

以上代码段编译没有通过,在VS2010中会有一条红色的波浪线指出这段代码有问题:”The operation overflows at compile time in checked mode”。这说明了编译器会在编译时检查数学运算是否溢出。但是编译时能检查出溢出的情况仅限于使用常量的运算。2中的代码编译器就不报不出错误来了。

2. 一段编译通过但是不能得到正确结果的代码

int temp = int.MaxValue; int a = temp * 2; Console.Write(a);

我先把常量int.MaxValue的值给了临时变量temp,然后使用临时变量乘以2计算结果赋值给a;这段代码是可以正常执行的,执行结果将输出 -2。

这说明在运行时默认情况程序是不会检查算术运算是否溢出的,cpu只管算,对于它来讲按规则算就是了,结果对不对不是他的错。

阅读全文
标签:

本文共计1121个文字,预计阅读时间需要5分钟。

请问关于c的具体应用场景有哪些?

checked和unchecked关键字用于限制检查或允许未检查的溢出;如果使用了checked,发生溢出会抛出OverflowException;如果使用了unchecked,则不会检查溢出,算错了也不会报错。

checked 和 unchecked关键字用来限定检查或者不检查数学运算溢出的;如果使用了checked发生数学运算溢出时会抛出OverflowException;如果使用了unchecked则不会检查溢出,算错了也不会报错。

1. 一段编译没通过的代码

int a = int.MaxValue * 2;

以上代码段编译没有通过,在VS2010中会有一条红色的波浪线指出这段代码有问题:”The operation overflows at compile time in checked mode”。这说明了编译器会在编译时检查数学运算是否溢出。但是编译时能检查出溢出的情况仅限于使用常量的运算。2中的代码编译器就不报不出错误来了。

2. 一段编译通过但是不能得到正确结果的代码

int temp = int.MaxValue; int a = temp * 2; Console.Write(a);

我先把常量int.MaxValue的值给了临时变量temp,然后使用临时变量乘以2计算结果赋值给a;这段代码是可以正常执行的,执行结果将输出 -2。

这说明在运行时默认情况程序是不会检查算术运算是否溢出的,cpu只管算,对于它来讲按规则算就是了,结果对不对不是他的错。

阅读全文
标签: