How do I get a pointer or equivalent to a struct in C Sharp?

In C I’d have an array of structures then in the code somewhere create a pointer to one of the structures in the array.
This gives me speedy access both read and write to the structure. How do I do this in C Sharp? For example my structure:

 public struct slot_struct
 {
    public float Health;
    public float SetPower;
 
    public slot_struct(float health,float setpower)
    {
      Health = health;
      SetPower = setpower;
    }
}

initialised like so:

public slot_struct[] Slots = 
{
    new slot_struct(100,25),
    new slot_struct(50,10),
};

Then in code what is the way to access the data to read and write it. This example below only lets me read the data as it
seems to create a copy and not be a pointer or reference to the entry in the array:-

 slot_struct Slot = Slots[1];
   Slot.Health = 22.5f;            // This doesn't actually write the data to the struct in the array  which is my problem

Any ideas? in C I’d just use slot_struct *Slot = &Slots[1];

If you’re passing this to a function, you can use ‘ref’.
Example:
void ModifyHealth ( ref slot_struct slot )

ModifyHealth(ref Slots[1]); // Modifies Slots[1]

If you want to reference a something by pointer in general, use a class instead of a struct - all uses of a classed object are by reference, rather than value.
Example:
class Slot

Slot[ ] Slots = new Slot[10];
Slots[1] = new Slot();

Slot curSlot = Slots[1];
curSlot.Health = 22.5f; // Modifies Slots[1]

Cool, I’ll convert the structs to classes and try again. Thanks.

classes are ref type
structs are value type

you can actually have pointers in unsafe code blocks:
http://msdn.microsoft.com/en-us/library/y31yhkeb(v=vs.80).aspx