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 PIC32C, unsigned 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. |