A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/c-sharp/c-sharp-structures-set-1/ below:

C# | Structures | Set - 1

C# | Structures | Set - 1

Last Updated : 11 Jul, 2025

Structure is a value type and a collection of variables of different data types under a single unit. It is almost similar to a class because both are user-defined data types and both hold a bunch of different data types. C# provide the ability to use pre-defined data types. However, sometimes the user might be in need to define its own data types which are also known as User-Defined Data Types. Although it comes under the value type, the user can modify it according to requirements and that's why it is also termed as the user-defined data type.
Defining Structure: In C#, structure is defined using struct keyword. Using struct keyword one can define the structure consisting of different data types in it. A structure can also contain constructors, constants, fields, methods, properties, indexers and events etc. 
 

Access_Modifier struct structure_name
{

   // Fields 
   // Parameterized constructor 
   // Constants 
   // Properties 
   // Indexers 
   // Events 
   // Methods etc.
   
}
CSHARP
// C# program to illustrate the 
// Declaration of structure
using System;
namespace ConsoleApplication {

// Defining structure
public struct Person
{
    // Declaring different data types
    public string Name;
    public int Age;
    public int Weight;

}

class Geeks {
    
    // Main Method
    static void Main(string[] args)
    {

        // Declare P1 of type Person
        Person P1;

        // P1's data
        P1.Name = "Keshav Gupta";
        P1.Age = 21;
        P1.Weight = 80;

        // Displaying the values 
        Console.WriteLine("Data Stored in P1 is " + 
                           P1.Name + ", age is " + 
                           P1.Age + " and weight is " + 
                           P1.Weight);

    }
}
}

Output: 
Data Stored in P1 is Keshav Gupta, age is 21 and weight is 80

 


Copy Structure: In C#, user can copy one structure object into another one using '=' (Assignment) operator.
 

Structure_object_destination = structure_object_source;
CSHARP
// C# program to illustrate copy the structure
using System;
namespace ConsoleApplication {

// Defining structure
public struct Person
{
    // Declaring different data types
    public string Name;
    public int Age;
    public int Weight;

}

class Geeks {
    
    // Main Method
    static void Main(string[] args)
    {

        // Declare P1 of type Person
        Person P1;

        // P1's data
        P1.Name = "Keshav Gupta";
        P1.Age = 21;
        P1.Weight = 80;
        
        // Declare P2 of type Person
        Person P2;
        
        // Copying the values of P1 into P2
         P2 = P1;

        // Displaying the values of P1
        Console.WriteLine("Values Stored in P1");
        Console.WriteLine("Name: " +P1.Name);
        Console.WriteLine("Age: " +P1.Age);
        Console.WriteLine("Weight: " +P1.Weight);
        Console.WriteLine("");
        
        // Displaying the values of P2
        Console.WriteLine("Values Stored in P2");
        Console.WriteLine("Name: " +P2.Name);
        Console.WriteLine("Age: " +P2.Age);
        Console.WriteLine("Weight: " +P2.Weight);
                           
    }
}
}

Output: 
Values Stored in P1
Name: Keshav Gupta
Age: 21
Weight: 80

Values Stored in P2
Name: Keshav Gupta
Age: 21
Weight: 80

 


Nesting of Structures: C# allows the declaration of one structure into another structure and this concept is termed as the nesting of the structure.
 

CSHARP
// C# program to illustrate Nesting of structures
using System;
namespace ConsoleApplication {

// first structure defined 
// with public modifier
public struct Address
{
    
    // data member of Address structure
    public string City;
    public string State;
}


// Another structure 
struct Person
{
    
    // data member of Person structure
    public string Name;
    public int Age;
    
    // Nesting of Address structure
    // by creating A1 of type Address
    public Address A1;
}

class Geeks {
    
    // Main method
    static void Main(string[] args)
    {

        // Declare p1 of type Person
        Person p1;

        // Assigning values to the variables
        p1.Name = "Raman";
        p1.Age = 12;
        
        // Assigning values to the nested
        // structure data members
        p1.A1.City = "ABC_City";
        p1.A1.State = "XYZ_State";
        
        Console.WriteLine("Values Stored in p1");
        Console.WriteLine("Name: " +p1.Name);
        Console.WriteLine("Age: " +p1.Age);
        Console.WriteLine("City: " +p1.A1.City);
        Console.WriteLine("State: " +p1.A1.State);

    }
}
}

Output: 
Values Stored in p1
Name: Raman
Age: 12
City: ABC_City
State: XYZ_State

 


Important Points about Structures: 
 


Difference Between Structures and Class : 
 

Category Structure Class Data Type Value Type Reference type Assignment Operation Copies the value Copies the reference Parameterless Constructors Not Allowed Allowed Inheritance Not supported Always supported

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4