Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #66613

Re: counting bytes

From James Kuyper <jameskuyper@verizon.net>
Newsgroups comp.lang.c
Subject Re: counting bytes
Date 2015-07-31 14:29 -0400
Organization Self
Message-ID <55BBBE70.8090907@verizon.net> (permalink)
References (14 earlier) <mp0qn7$l63$1@speranza.aioe.org> <55B3FE86.5060506@verizon.net> <55bb7710.17217812@news.xs4all.nl> <55BB94DC.5030608@verizon.net> <lnh9okkwms.fsf@kst-u.example.com>

Show all headers | View raw


On 07/31/2015 02:30 PM, Keith Thompson wrote:
> James Kuyper <jameskuyper@verizon.net> writes:
> [...]
>> Prior to C2011, there was no standardized way of dealing with UTF-16
>> encodings. In C2011, if an implementation pre#defines __STDC_UTF_16__,
>> character constants and string literals that use the 'u' prefix are
>> encoded using UTF-16, and mbrtoc16() and cr16rtomb() interpret their
>> inputs as having been encoded using UTF-16.
> 
> That's not quite correct.  The meaning of the 'u' prefix is not tied to
> any predefined macro setting.
> 
> L"foo" is of type wchar_t[].
> u"foo" is of type char16_t[].
> U"foo" is of type char32_t[].
> u8"foo" is of type char[] and is encoded in UTF-8.
> 
> __STDC_UTF_16__ indicates that values of type char16_t are UTF-16
> encoded; otherwise the encoding is implementation-defined.

u"foo"[0] is a value of type char16_t. I don't understand what
__STDC_UTF_16__ means if it doesn't apply to that value.

> __STDC_UTF_32__ indicates that values of type char32_t are UTF-32
> encoded.
> 
> Both could plausibly be defined as 1.  I think they affect the
> behavior of functions declared in <uchar.h>.

If you believe that it applies to mbrtoc16(), which is declared in that
header, then the following citations prove that it also applies to
character constants and string literals defined with a 'u' prefix:

"The value of a wide character constant containing a single
multibyte character that maps to a single member of the extended
execution character set is the wide character corresponding to that
multibyte character, as defined by the mbtowc, mbrtoc16, or mbrtoc32
function as appropriate for its type, with an implementation-defined
current locale." 6.4.4.4p11

"For wide string literals prefixed by the letter u or U, the array
elements have type char16_t or char32_t, respectively, and are
initialized with the sequence of wide characters corresponding to the
multibyte character sequence, as defined by successive calls to the
mbrtoc16, or mbrtoc32 function as appropriate for its type, with an
implementation-defined current locale." 6.4.5p6

I don't like this "implementation-defined current locale". There should
also be a way for a program to find out which locale was used.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

counting bytes bilsch01 <king621@comcast.net> - 2015-06-06 04:58 -0700
  Re: counting bytes Bartc <bc@freeuk.com> - 2015-06-06 13:05 +0100
    Re: counting bytes bilsch01 <king621@comcast.net> - 2015-06-06 05:24 -0700
      Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-06-06 05:41 -0700
        Re: counting bytes Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-06-06 14:00 +0100
      Re: counting bytes Bartc <bc@freeuk.com> - 2015-06-06 13:52 +0100
      Re: counting bytes Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-06-06 10:27 -0400
        Re: counting bytes jt@toerring.de (Jens Thoms Toerring) - 2015-06-06 22:31 +0000
          THANKS EVERYBODY FOR THE INFO bilsch01 <king621@comcast.net> - 2015-06-06 23:35 -0700
            Re: THANKS EVERYBODY FOR THE INFO Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-06-07 10:08 +0100
              Re: THANKS EVERYBODY FOR THE INFO Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-06-07 09:22 -0700
                Re: THANKS EVERYBODY FOR THE INFO Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-06-07 18:07 +0100
                Re: THANKS EVERYBODY FOR THE INFO Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-06-08 04:03 -0700
                Re: THANKS EVERYBODY FOR THE INFO Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-11 08:12 -0700
            Re: THANKS EVERYBODY FOR THE INFO Keith Thompson <kst-u@mib.org> - 2015-06-07 08:01 -0700
          Re: counting bytes gordonb.3gcai@burditt.org (Gordon Burditt) - 2015-06-07 05:02 -0500
          Re: counting bytes David Brown <david.brown@hesbynett.no> - 2015-06-07 15:32 +0200
            Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-06-07 12:48 -0700
              Re: counting bytes David Brown <david.brown@hesbynett.no> - 2015-06-07 23:05 +0200
                Re: counting bytes Richard Heathfield <rjh@cpax.org.uk> - 2015-06-07 22:17 +0100
                Re: counting bytes David Brown <david.brown@hesbynett.no> - 2015-06-07 23:49 +0200
                Re: counting bytes Richard Heathfield <rjh@cpax.org.uk> - 2015-06-07 23:37 +0100
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-11 08:25 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-11 08:21 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-11 13:54 -0500
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-20 06:33 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-20 09:51 -0500
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-24 09:49 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-24 12:26 -0500
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-30 11:16 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-30 23:15 -0500
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-02 06:07 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-02 14:31 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-09 05:31 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-09 17:09 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-05 09:58 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-09-05 19:29 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-06 14:38 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-09-06 17:46 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-07 23:50 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-09-06 22:00 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-07 23:24 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-24 20:03 -0400
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-24 22:13 -0500
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 02:22 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-25 11:39 -0500
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 09:48 -0700
                Re: counting bytes Martin Shobe <martin.shobe@yahoo.com> - 2015-07-25 14:04 -0500
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 14:22 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-25 11:07 -0400
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-25 12:43 -0400
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-25 13:32 -0400
                Re: counting bytes glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-07-25 20:14 +0000
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-25 17:24 -0400
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 14:42 -0700
                Re: counting bytes glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-07-25 23:02 +0000
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-25 19:17 -0400
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-25 16:37 -0700
                Re: counting bytes glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-07-26 06:10 +0000
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-26 08:31 -0400
                Re: counting bytes Bartc <bc@freeuk.com> - 2015-07-30 21:32 +0100
                Re: counting bytes raltbos@xs4all.nl (Richard Bos) - 2015-07-31 13:25 +0000
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-31 11:31 -0400
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-31 11:30 -0700
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-31 14:29 -0400
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-31 12:14 -0700
                Re: counting bytes David Kleinecke <dkleinecke@gmail.com> - 2015-07-31 17:39 -0700
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-31 23:32 -0400
                Re: counting bytes David Kleinecke <dkleinecke@gmail.com> - 2015-08-01 16:41 -0700
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-08-01 20:23 -0400
                Re: counting bytes Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-07-31 11:01 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-25 19:42 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-30 12:16 -0700
                Re: counting bytes Bartc <bc@freeuk.com> - 2015-07-30 22:04 +0100
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-02 06:10 -0700
                Re: counting bytes David Kleinecke <dkleinecke@gmail.com> - 2015-07-25 19:10 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-25 22:16 -0400
                Re: counting bytes David Kleinecke <dkleinecke@gmail.com> - 2015-07-25 19:46 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-30 11:52 -0700
                Re: counting bytes raltbos@xs4all.nl (Richard Bos) - 2015-07-31 08:51 +0000
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-02 06:19 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-01 09:39 -0400
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-08-01 13:06 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-01 20:43 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-02 06:52 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-02 15:14 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-09 07:54 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-08-09 16:43 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-05 10:48 -0700
                Re: counting bytes Richard Damon <Richard@Damon-Family.org> - 2015-07-11 17:50 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-20 06:36 -0700
                Re: counting bytes raltbos@xs4all.nl (Richard Bos) - 2015-07-20 15:14 +0000
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-24 09:38 -0700
                Re: counting bytes raltbos@xs4all.nl (Richard Bos) - 2015-07-25 19:12 +0000
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-30 12:18 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-11 17:03 -0700
                Re: counting bytes glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-07-12 00:15 +0000
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-11 17:42 -0700
                Re: counting bytes glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-07-12 02:46 +0000
                Re: counting bytes James Kuyper <jameskuyper@verizon.net> - 2015-07-12 12:33 -0400
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-20 06:48 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-20 11:18 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-24 09:58 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-24 11:14 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-07-30 11:02 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-07-30 13:10 -0700
                Re: counting bytes Tim Rentsch <txr@alumni.caltech.edu> - 2015-08-01 10:53 -0700
                Re: counting bytes Keith Thompson <kst-u@mib.org> - 2015-06-07 14:46 -0700
                Re: counting bytes David Brown <david.brown@hesbynett.no> - 2015-06-08 09:05 +0200
  Re: counting bytes Siri Cruz <chine.bleu@yahoo.com> - 2015-06-06 05:06 -0700
  Re: counting bytes bartekltg <bartekltg@gmail.com> - 2015-07-26 00:58 +0200
    Re: counting bytes bartekltg <bartekltg@gmail.com> - 2015-07-26 01:00 +0200

csiph-web