Re: "A diagram of C23 basic types"

Liste des GroupesRevenir à l c 
Sujet : Re: "A diagram of C23 basic types"
De : tr.17687 (at) *nospam* z991.linuxsc.com (Tim Rentsch)
Groupes : comp.lang.c
Date : 11. Apr 2025, 17:34:58
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <867c3qbqrx.fsf@linuxsc.com>
References : 1
User-Agent : Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Alexis <flexibeast@gmail.com> writes:

Thought people here might be interested in this image on Jens Gustedt's
blog, which translates section 6.2.5, "Types", of the C23 standard
into a graph of inclusions:
>
  https://gustedt.wordpress.com/2025/03/29/a-diagram-of-c23-basic-types/

That diagram gets an F for presentation.

I can't help feeling that the information could have been
presented in a form that is simpler and easier to take in.

Disclaimer:  the outline below is meant to convey all the
information that is present in the diagram (and perhaps a tiny
bit more), but I'm not sure I got everything, and I probably
didn't.  YGWYPF.

Disclaimer 2:  the notation used is meant to be self-explanatory.
Don't blame me if it isn't.  :/

    Scalar
      Pointer
        [regular]
        nullptr_t
      Arithmetic (basic)
        Complex (floating)
          _Complex float
          _Complex double
          _Complex long double
        Real
          Real floating (floating)
            decimal floating
              _Decimal32
              _Decimal64
              _Decimal128
            [plain]
              float
              double
              long double
          Integer
            Enumeration (! basic)
            Standard
              char (char) (promotes)
              Standard Signed Integer (signed integer)
                signed char (char) (promotes)
                signed short (promotes)
                signed int
                signed long
                signed long long
                [unadorned int]
              Standard Unsigned Integer (unsigned integer)
                _Bool
                unsigned char (char)
                unsigned short (promotes)
                unsigned int
                unsigned long
                unsigned long long
            Extended
              Extended Signed (signed integer)
              Extended Unigned (unsigned integer)
            Bit-precise integers
              Bit-precise signed integer [* widths]
              Bit-precise unsigned integer [* widths]
                unsigned _BitInt[1]

Incidentally, [unadorned int] is meant to reflect the difference
between using 'int' and 'signed int' for the type of a bitfield.
I don't know if that distinction still exists in C23.

Date Sujet#  Auteur
24 Mar 26 o 

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal