Data Types and Variables are the core part of the
C# language since it represents the various ways to express numbers, characters, and strings. As an example, if you would like to add two numbers, you will have to write code as shown below
- int X = 200;
- int Y = 400;
- int Z = X+Y;
- Console.WriteLine(Z);
Even though the above code is not a complete C# code listing, it shows the correct way to declare values. While int represents the built-in data type called Integer, the characters X, Y and Z in the above code are termed as variables, which are used to store data. You cannot perform any work without storing data. Hence, variables form part and parcel of C# programming language.
As you can see in the above code, 200 and 400 are values and the result is stored in another variable Z. However, you should note that each data type have a fixed range beyond which you cannot store values. This means you cannot store a large number using integer data type and vice versa. As a programmer, you should select an appropriate data type before beginning to code and store values relevant to them.
If you store incorrect values using any data type, the program will display errors (CS0266) during compilation stage. Look at the same source code given below
- using System;
- class Add {
- public static void Main() {
- int X = 2000;
- int Y = 4000;
- int Z = X+Y;
- Console.WriteLine ("The answer is " +Z);
- }
- }
The above code will not display any compilation errors since we have stored correct values. However, if you attempt to compile the code given below, you will be able to view the compilation error.
- using System;
- class Add {
- public static void Main() {
- int X = 200000000000000000;
- int Y = 400000000000000000;
- int Z = X+Y;
- Console.WriteLine ("The answer is " +Z);
- }
- }
If you compile the above code, you will view the following error message,
Different Types of Data Types
The .NET Framework provides several data types which you can use for developing applications. The data types as shown in the below table are provided by the Common Language Runtime (CLR). Hence all .NET Framework languages including C# can take advantage of them.
Data Type Prefix | .NET Data Type | Min Value | Max Value |
sbyte | System.Sbyte | -128 | 127 |
byte | System.Byte | 0 | 255 |
short | System.Int16 | -32,768 | 32,767 |
ushort | System.UInt16 | 0 | 65,535 |
int | System.Int32 | -2,147,483,648 | 2,147,483,647 |
uint | System.UInt32 | 0 | 4,294,967,295 |
long | System.Int64 | -9,223372,036,854,775,808 | 9,223372,036,854,775,808 |
ulong | System.UInt64 | 0 | 18,446,744,073,709,551,615 |
char | System.Char | 0 | 65,535 |
float | System.Single | 1.5 x 10-45 | 3.4 x 10 38 |
double | System.Double | 5.0 x 10-324 | 1.7 x 1010308 |
bool | System.Boolean | False (0) | True (1) |
decimal | System.Decimal | 1.0 x 10-28 | 7.9 x 1028 |
Operators
Operators enable you to manipulate values and perform arithmetical operations. For example, if you need to multiply two numbers, you need to make use of * symbol. Likewise, for addition, you should use + symbol.
In programming terminology, these symbols are called as Operators, which you will use during the development of applications which largely uses mathematical functions like Calculator. In the below table, you will find a wide range of operators in C# in the order of their precedence.
Name of the Operator | Description |
Primary Operators | () . [] x++ x-- new typeof sizeof checked unchecked |
Unary | + - ! - ++x --x |
Multiplicative | * / % |
Additive | + - |
Shift | << >> |
Relational | < > <= >= is |
Equality | = = != |
Logical AND | & |
Logical XOR | ^ |
Logical OR | | |
Conditional AND | && (Used for evaluating conditions using if-else) |
Conditional OR | || (Used for evaluating conditions using if-else) |
Conditional | ?: (Used for evaluating conditions instead of if-else) |
Assignment | = *= /= %= += -= <<= >>= &= ^= != |
Read more articles on C#: