Compiler Error CS0211
Cannot take the address of the given expression
You can take the address of fields, local variables, and indirection of pointers, but you cannot take, for example, the address of the sum of two local variables. For more information, see Unsafe Code and Pointers (C# Programming Guide).
The following sample generates CS0211:
// CS0211.cs
// compile with: /unsafe
public class MyClass
{
unsafe public void M()
{
int a = 0, b = 0;
int *i = &(a + b); // CS0211, the addition of two local variables
// try the following line instead
// int *i = &a;
}
public static void Main()
{
}
}