ISO Standard: |
“The number of bits in a byte (C90 3.4, C99 3.6).” |
Implementation: |
8. |
ISO Standard: |
“The values of the members of the execution character set (C90 and
C99 5.2.1).” |
ISO Standard: |
“The unique value of the member of the execution character set
produced for each of the standard alphabetic escape sequences (C90 and
C99 5.2.2).” |
Implementation: |
The execution character set is ASCII. |
ISO Standard: |
“The value of a char object into which has been stored any character
other than a member of the basic execution character set (C90 6.1.2.5,
C99 6.2.5).” |
Implementation: |
The value of the char object is the 8-bit binary representation of
the character in the source character set. That is, no translation is
done. |
ISO Standard: |
“Which of signed char or unsigned char has the same range,
representation, and behavior as “plain” char (C90 6.1.2.5, C90 6.2.1.1,
C99 6.2.5, C99 6.3.1.1).” |
Implementation: |
By default on PIC32M, signed char is functionally equivalent to plain
char. |
ISO Standard: |
“The mapping of members of the source character set (in character
constants and string literals) to members of the execution character set
(C90 6.1.3.4, C99 6.4.4.4, C90 and C99 5.1.1.2).” |
Implementation: |
The binary representation of the source character set is preserved to
the execution character set. |
ISO Standard: |
“The value of an integer character constant containing more than one
character or containing a character or escape sequence that does not map
to a single-byte execution character (C90 6.1.3.4, C99
6.4.4.4).” |
Implementation: |
The compiler determines the value for a multi-character character
constant one character at a time. The previous value is shifted left by
eight, and the bit pattern of the next character is masked in. The final
result is of type int . If the result is larger than can
be represented by an int , a warning diagnostic is
issued and the value truncated to int size. |
ISO Standard: |
“The value of a wide character constant containing more than one
multibyte character, or containing a multibyte character or escape
sequence not represented in the extended execution character set (C90
6.1.3.4, C99 6.4.4.4).” |
Implementation: |
See previous. |
ISO Standard: |
“The current locale used to convert a wide character constant
consisting of a single multibyte character that maps to a member of the
extended execution character set into a corresponding wide character
code (C90 6.1.3.4, C99 6.4.4.4).” |
Implementation: |
LC_ALL |
ISO Standard: |
“The current locale used to convert a wide string literal into
corresponding wide character codes (C90 6.1.4, C99 6.4.5).” |
Implementation: |
LC_ALL |
ISO Standard: |
“The value of a string literal containing a multibyte character or
escape sequence not represented in the execution character set (C90
6.1.4, C99 6.4.5).” |
Implementation: |
The binary representation of the characters is preserved from the
source character set. |