bool al_ustr_prev(const ALLEGRO_USTR *us, int *pos)
Introduced in 5.0.0

Find the byte offset of the previous code point in string, before *pos. *pos does not have to be at the beginning of a code point. Returns true on success, then value pointed to by pos will be updated to the found offset. Otherwise returns false if *pos was already at the end of the string, then *pos is unmodified.

This function just looks for an appropriate byte; it doesn't check if found offset is the beginning of a valid code point. If you are working with possibly invalid UTF-8 strings then it could skip over some invalid bytes.

See also: al_ustr_next

Examples: ex_utf8

Most helpful discussions: