470,849 Members | 1,092 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 470,849 developers. It's quick & easy.

sizeof(char)

I have a C book that says the sizeof a char is one byte. Is this true for
C++?
Jul 22 '05 #1
5 15965
"nsgi_2004" <no****@nospam.com> wrote in message
news:X1xvc.42929$mm1.41139@fed1read06...
I have a C book that says the sizeof a char is one byte. Is this true for
C++?


Yes.
Jul 22 '05 #2
"nsgi_2004" <no****@nospam.com> wrote...
I have a C book that says the sizeof a char is one byte. Is this true for
C++?


sizeof(char) is always 1, yes. 'char' and 'byte' are synonyms in
both C and C++ when sizes are concerned.

V
Jul 22 '05 #3
On Wed, 2 Jun 2004 20:37:24 -0700 in comp.lang.c++, "nsgi_2004"
<no****@nospam.com> wrote,
I have a C book that says the sizeof a char is one byte. Is this true for
C++?


Yes. Note that a byte or char must be AT LEAST 8 bits in size,
but can be any number larger.

Jul 22 '05 #4
"nsgi_2004" <no****@nospam.com> wrote in message news:<X1xvc.42929$mm1.41139@fed1read06>...
I have a C book that says the sizeof a char is one byte. Is this true for
C++?


Yes, because C++ redefines byte to mean the size of a char. It's not
always the 8-bit thingy you might expect. This is shared between C
and C++, It's relevant e.g. for some DSP chips inside cellphones
that have 32 bits per byte. Now, those are programmed in C not C++,
but C++ felt no need to differ from C here. If anyone writes a
C++ compiler for such things, they can still use the same 32-bit
char.

Regards,
Michiel Salters
Jul 22 '05 #5
Michiel Salters wrote:
"nsgi_2004" <no****@nospam.com> wrote in message news:<X1xvc.42929$mm1.41139@fed1read06>...
I have a C book that says the sizeof a char is one byte. Is this true for
C++?

Yes, because C++ redefines byte to mean the size of a char. It's not
always the 8-bit thingy you might expect. This is shared between C
and C++, It's relevant e.g. for some DSP chips inside cellphones
that have 32 bits per byte. Now, those are programmed in C not C++,
but C++ felt no need to differ from C here. If anyone writes a
C++ compiler for such things, they can still use the same 32-bit
char.

Regards,
Michiel Salters


Yep. If you want to specify an 8-bit quantity, you might want to follow
the lead of the internet RFC guys and call it an "octet". sizeof(char)
is 1. Period. Regardless of the actual number of bits in it. Just for
reference, IIRC from my original K&R, one of the early C implementations
was on a machine with 9-bit "bytes".
Jul 22 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

17 posts views Thread by Josť de Paula | last post: by
9 posts views Thread by M Welinder | last post: by
9 posts views Thread by Sunner Sun | last post: by
12 posts views Thread by Olaf \El Blanco\ | last post: by
2 posts views Thread by arnaudk | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.