Provided by: allegro5-doc_5.2.9.1+dfsg-1.1build4_all bug

NAME

       al_cstr - Allegro 5 API

SYNOPSIS

              #include <allegro5/allegro.h>

              const char *al_cstr(const ALLEGRO_USTR *us)

DESCRIPTION

       Get  a  char  *  pointer  to the data in a string.  This pointer will only be valid while the ALLEGRO_US‐
       TR(3alleg5) object is not modified and not destroyed.  The pointer may be passed to  functions  expecting
       C-style strings, with the following caveats:

       • ALLEGRO_USTRs  are  allowed  to  contain  embedded  NUL  ('\0')  bytes.  That means al_ustr_size(u) and
         strlen(al_cstr(u)) may not agree.

       • An ALLEGRO_USTR may be created in such a way that it is not NUL terminated.  A string which is  dynami‐
         cally  allocated  will  always  be  NUL terminated, but a string which references the middle of another
         string or region of memory will not be NUL terminated.

       • If the ALLEGRO_USTR references another string, the returned C string will  point  into  the  referenced
         string.  Again, no NUL terminator will be added to the referenced string.

SEE ALSO

       al_ustr_to_buffer(3alleg5), al_cstr_dup(3alleg5)

Allegro reference manual                                                                        al_cstr(3alleg5)