sizeof(char)

N

nsgi_2004

I have a C book that says the sizeof a char is one byte. Is this true for
C++?
 
V

Victor Bazarov

nsgi_2004 said:
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
 
D

David Harmon

On Wed, 2 Jun 2004 20:37:24 -0700 in comp.lang.c++, "nsgi_2004"
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.
 
M

Michiel Salters

nsgi_2004 said:
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
 
R

red floyd

Michiel said:
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".
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top