Udostępnij za pośrednictwem


Niekompletne typy

Niekompletny typ jest typem, który opisuje identyfikator, ale nie posiada informacji potrzebnych do określenia rozmiaru identyfikatora."Typem niekompletnym" może być:

  • Typ struktury, której elementy członkowskie nie zostały jeszcze określone.

  • Typ związku, którego elementy członkowskie nie zostały jeszcze określone.

  • Typ tablicy, której wymiar nie został jeszcze określony.

Typ pusty jest typem niekompletnym, który nie może być uzupełniony.Aby uzupełnić niekompletny typ, należy określić brakujące informacje.Następujące przykłady przedstawiają sposób tworzenia i uzupełnienia niekompletnych typów.

  • Aby utworzyć niekompletny typ struktury, należy zadeklarować typ struktury bez określania jej elementów członkowskich.W tym przykładzie, wskaźnik ps wskazuje na niekompletny typ struktury o nazwie student.

    struct student *ps;
    
  • Aby uzupełnić niekompletny typ struktury, należy zadeklarować taki sam typ struktury później w tym samym zakresie z określonymi elementami członkowskimi, jak w

    struct student
    {
        int num;
    }                   /* student structure now completed */
    
  • Aby utworzyć niekompletny typ tablicowy, należy zadeklarować typ tablicowy bez określania jego ilości powtórzeń.Na przykład:

    char a[];  /* a has incomplete type */
    
  • Aby uzupełnić niekompletny typ tablicowy, należy zadeklarować tą samą nazwę później w tym samym zakresie, z określoną liczbą powtórzeń, jak w

    char a[25]; /* a now has complete type */
    

Zobacz też

Koncepcje

Deklaracje i typy