Compilerfehler CS0650

Fehlerhafte Arraydeklaration: Beim Deklarieren eines verwalteten Arrays steht der Rangspezifizierer vor dem Variablenbezeichner. Zum Deklarieren eines Pufferfelds fester Größe verwenden Sie vor dem Feldtyp das Schlüsselwort „fixed“.

Ein Array wurde falsch deklariert. Anders als in C und C++ folgen die eckigen Klammern in C# auf den Typ, nicht auf den Variablennamen. Beachten Sie außerdem, dass sich die Syntax eines Puffers mit fester Größe von der eines Arrays unterscheidet.

Beispiel

Im folgenden Beispielcode wird der Fehler CS0650 generiert.

// CS0650.cs  
public class MyClass  
{  
   public static void Main()  
   {  
// Generates CS0650. Incorrect array declaration syntax:  
      int myarray[2];     

      // Correct declaration.  
      int[] myarray2;  

      // Declaration and initialization in one statement  
      int[] myArray3= new int[2] {1,2}  

      // Access an array element.  
      myarray3[0] = 0;  
    }  
}  

Beispiel

Das folgende Beispiel zeigt, wie das Schlüsselwort fixed beim Erstellen eines Puffers mit fester Größe verwendet wird:

// This code must appear in an unsafe block.   
public struct MyArray   
{  
    public fixed char pathName[128];  
}  

Siehe auch

Fixed Size Buffers (Puffer fester Größe)
fixed-Anweisung
Arrays