实际上属于到C11中的“字符类型” - 除了char
当然还有吗?
更准确地说,字符类型的特殊例外(例如任何对象可以通过字符类型的左值表达式访问 - 参见C11标准中的§6.5/ 7),它们适用哪种具体类型?他们似乎从uint8_t
申请int8_t
和stdint.h
,但这有保证吗?另一方面,gcc不会将char16_t
中的uchar.h
视为“字符类型”。
答案 0 :(得分:8)
仅already
,:first
和already
1 。
$('#slotMachine #slotMachine2 div.combi').each(function(index, el) {
if(!$(el).is('.already')) {
console.log(index);
}
});
,char
,signed char
类型或unsigned char
或uint8_t
形式的任何类型可能是也可能不是角色的同义词类型。
1 (引自:ISO / IEC 9899:201x 6.2.5类型15)
char,signed char和unsigned char这三种类型统称为字符类型。
答案 1 :(得分:7)
char
,signed char
和unsigned char
是C11中的字符类型。这与C89相同。
将int8_t
(或uint8_t
)视为字符类型有很多问题。
CHAR_BIT > 8
可能不存在。 由于它们存在,如果它们存在,请键入现有类型,您可以在实践中使用int8_t
或uint8_t
作为字符类型 。但是标准并不保证任何东西,当你拥有真正的字符类型时,没有理由将它们当作这样对待。