EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

C# checked

By Shobha ShivakumarShobha Shivakumar

Home » Software Development » Software Development Tutorials » C# Tutorial » C# checked

C# checked

Introduction to C# checked

To explicitly check the overflow for integral type operations and conversions in arithmetic, the overflow checking must be enabled for integral type operations and conversions in arithmetic and this is possible by making use of a keyword called checked keyword in C# and by using checked keyword for expression in C#, the constant expression is checked for overflow during run time and if there is overflow, overflow exceptions are raised by the compiler whereas the expressions those are non-constant are not checked for overflow during the run time despite the use of checked keyword and overflow, exceptions are not raised in such cases.

 The syntax of checked keyword C# is as follows:

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

checked(Expression)

Working of the checked keyword in C#

  • Whenever a number is overflown, the value of the number becomes invalid. As a result, no exceptions will be thrown.
  • For the exceptions to be thrown whenever a number is overflowing, we make use of the keyword checked.
  • Whenever a checked keyword is used for an expression whose value is overflowing, exceptions will be raised.
  • Since there are exceptions that will be raised for overflowing values, the errors can be avoided by catching the exceptions. As a result, the quality of the resulting program will be good.
  • Consider the below program to demonstrate the use of checked keyword in a C# program:

Code:

//a namespace called check is defined
namespace check
{
//a class called space is defined
public class space
{
//main method is called
public static void Main()
{
// Using checked keyword to check if the value is over flowing
checked
{
// Increasing the value upto the value of maximum
int number = 0;
for (int x = 0; x < int.MaxValue; x++)
{
number++;
}
// Increasing the value upto the value of maximum again (error).
for (int x = 0; x < int.MaxValue; x++)
{
number++;
}
}
}
}
}

Output:

C# checked output 1

In the above program, a namespace called check is defined. Then a class called space is defined. Then the main method is called. Then we have used checked keyword to check if the value is overflowing by increasing the value up to the value of maximum. If we do not make use of the checked keyword in the above program, no exception will be thrown. Because we have made use of checked keyword in our program, an exception as shown in the output snapshot is thrown. The checked keyword in the program can be activated by selecting the option in the compiler “/checked”. An overflow exception is raised when the variable number is incremented by one every time to reach the maximum value of the integer which cannot be fit in the memory location. Overflow exception is raised during the run time by using special intermediate instructions.

Examples of C# checked

Here are the following examples mention below

Example #1

C# program to demonstrate the use of a checked keyword to throw exceptions.

Code:

using System;
//a namespace called check is defined
namespace check
{
//a class called space is defined
public class space
{
//main method is called
public static void Main()
{
// Using checked keyword to check if the value is over flowing
checked
{
int twenty = 20;
int j = 2147483647 + twenty;
Console.WriteLine(j);
}
}
}
}

Output:

C# checked output 2

In the above program, a namespace called check is defined. Then a class called space is defined. Then the main method is called. Then we have used checked keyword to check if the value is overflowing by assigning the value 20 to a variable twenty and then adding it to the maximum value of the integer so that an exception will be thrown. If we do not make use of the checked keyword in the above program, no exception will be thrown. Because we have made use of checked keyword in our program, an exception as shown in the output snapshot is thrown. The checked keyword in the program can be activated by selecting the option in the compiler “/checked”. An overflow exception is raised when the value of the variable twenty is added to the maximum value of the integer which cannot be fit in the memory location. Overflow exception is raised during the run time by using special intermediate instructions.

Popular Course in this category
C# Training Program (6 Courses, 17 Projects)6 Online Courses | 17 Hands-on Project | 89+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.6 (8,847 ratings)
Course Price

View Course

Related Courses
ASP.NET Training (8 Courses, 19 Projects).NET Training Program (4 Courses, 19 Projects)

Example #2

C# program to demonstrate the use of a checked keyword to throw exceptions.

Code:

using System;
//a class called check is defined
public class Check
{
//the maximum value of integer is assigned to a variable
static int maxInt = 2147483647;
//main method is called
public static void Main()
{
Console.WriteLine(CheckMethod());
}
static int CheckMethod()
{
int y = 0;
try
{
y = checked (maxInt + 1);
}
catch (System.OverflowException e)
{
Console.WriteLine("An overflow exception is raised because of maximum integer value " + e.ToString());
}
return y;
}
}

Output:

output 3

In the above program, a class called Check is defined. Then the maximum value of the integer is assigned to a variable maxInt. Then the main method is called. Then we call the check method function within which we have made use of the try-catch block which consists of checked keyword usage to add one to the maximum value of the integer and the catch block consists of the exception statement we want to be displayed. If we do not make use of the checked keyword in the above program, no exception will be thrown. Because we have made use of checked keyword in our program, an exception as shown in the output snapshot is thrown. The checked keyword in the program can be activated by selecting the option in the compiler “/checked”. An overflow exception is raised when the value of the variable twenty is added to the maximum value of the integer which cannot be fit in the memory location. Overflow exception is raised during the run time by using special intermediate instructions.

Conclusion

In this tutorial, we understand the concept of the checked keyword in C# through definition, the syntax of the checked keyword in C#, Working of the checked keyword in C# through examples, and their outputs.

Recommended Articles

This is a guide to C# checked. Here we discuss the working of the checked keyword in C# along with examples for better understanding. You may also look at the following articles to learn more –

  1. BinaryWriter in C#
  2. C# Create JSON Object
  3. C# Delegates
  4. C# Nullable

C# Training Program (6 Courses, 17 Projects)

6 Online Courses

17 Hands-on Project

89+ Hours

Verifiable Certificate of Completion

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
C sharp Tutorial
  • Functions
    • C# Functions
    • C# String Functions
    • Math Functions in C#
    • Recursive Function in C#
    • C# Anonymous Functions
    • C# Local Functions
    • Enum in C#
    • Trim() in C#
    • clone() in C#
    • C# random
    • C# String Format()
    • C# String Interpolation
    • C# StartsWith()
    • C# String IndexOf()
    • DateTime in C#
    • C# Nullable
    • C# nameof
    • C# checked
    • C# String PadLeft
    • Convert String to Double in C#
    • Convert int to String C#
    • String to Date C#
    • C# intern()
    • C# Stopwatch
    • C# DirectoryInfo
    • C# Compare()
    • C# Base
    • C# SOAP
    • Lock in C#
  • Basic
    • Uses Of C#
    • C# Versions
    • C# Data Types
    • Variables in C#
    • Namespaces in C#
    • C# Compilers
    • C# Keywords
    • Iterators in C#
    • Objects in C#
    • C# Object Dispose
    • C# object to XML
    • C# check object type
    • C# Object Serialization
    • Pointers in C#
    • C# Literals
    • C# Commands
    • C# Custom Attribute
    • Type Casting in C#
    • String vs String C#
    • C# Struct vs Class
  • Operators
    • Logical Operators in C#
    • Conditional Operators in C#
    • Bitwise Operators in C#
    • C# OR Operator
    • C# Ternary Operators
    • Operator Precedence in C#
  • Control Statement
    • C# if Statement
    • Else If in C#
    • Continue in C#
    • Break in C#
    • Switch Statement in C#
    • Goto Statement in C#
  • Loops
    • C# For Loop
    • C# While Loop
    • C# do-while loop
    • C# foreach Loop
  • Arrays
    • Arrays in C#
    • 2D Arrays in C#
    • C# Jagged Arrays
    • String Array in C#
    • C# Multidimensional Arrays
  • Constructor and Destructor
    • Constructor in C#
    • Copy Constructor in C#
    • Static Constructor in C#
    • Destructor in C#
  • overloading and overrideing
    • Overloading and Overriding in C#
    • Overloading in C#
    • Overriding in C#
    • Method Overloading in C#
    • Method Overriding in C#
    • Operator Overloading in C#
  • Advanced
    • Inheritance in C#
    • Exception Handling in C#
    • Types of Exception in C#
    • C# FileNotFoundException
    • C# NullReferenceException
    • C# OutOfMemoryException
    • C# StackOverflowException
    • Custom Exception in C#
    • What is Multithreading in C#
    • C# finally
    • C# System.IO
    • What is StringBuilder in C#
    • DataReader C#
    • BinaryWriter in C#
    • C# BinaryReader
    • TextWriter in C#
    • TextReader in C#
    • C# StringReader
    • C# StringWriter
    • C# StreamReader
    • C# StreamWriter
    • C# FileInfo
    • What is Design Pattern in C#?
    • Multithreading in C#
    • Sorting in C#
    • Bubble Sort in C#
    • C# SortedList
    • C# SortedSet
    • C# SortedDictionary
    • Abstract Class in C#
    • Access Modifiers in C#
    • C# Generics
    • Deserialization in C#
    • C# Thread
    • C# Thread Join
    • C# Thread Sleep
    • C# Thread Synchronization
    • C# Class
    • Sealed in C#
    • Sealed Class in C#
    • Polymorphism in C#
    • C# Call By Reference
    • Virtual Keyword in C# 
    • Yield Keyword in C#
    • Regular Expression in C#
    • C# Lambda Expression
    • C# Predicate
    • Convert Object to JSON C#
    • Checkbox in C#
    • C# MessageBox
    • Collections in C#
    • List in C#
    • C# LinkedList
    • Listbox in C#
    • Protected in C#
    • C# EventHandler
    • Private in C#
    • this Keyword in C#
    • Static Keyword in C#
    • C# Out Parameter
    • Assert in C#
    • C# Delegates
    • C# Interface
    • Generics in C#
    • Timer in C#
    • C# Serialization
    • Metadata in C#
    • C# Stack
    • C# Using Static
    • Queue in C#
    • C# File.Exists
    • C# Tuples
    • C# Create JSON Object
    • Partial in C#
    • C# readonly
    • C# Action Delegate
    • C# Await Async
    • C# Dictionary
    • IEnumerable C#
    • C# Data Grid View
    • C# Dynamic
    • Web Services in C#
    • C# Pattern Matching
    • C# Extension Methods
    • C# XmlSerializer
  • Programs
    • Patterns in C#
    • Swapping in C#
    • Palindrome in C#
    • Factorial in C#
    • Fibonacci Series in C#
    • Random Number Generator in C#
    • Prime Numbers in C#
    • Armstrong Number in C#
    • Reverse String in C#
  • Interview questions
    • C# Interview Questions and Answers
    • C# OOP Interview Questions
    • C# Design Pattern Interview Questions

Related Courses

C# Certification Training

ASP.NET Course

.NET Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - C# Training Program (6 Courses, 17 Projects) Learn More