One of the new features of C# 2.0 is nullable types. Now C# 2.0 allows you to assign null values to premitive types such as int, long, and bool.
The following code shows how to define an integer as nullable type and checks if the value of the integer is null or not.
If you remove the "?" from int? counter, you will see a warning as following: