Rozdíl mezi klíčem: Podepsaný znak a nepodepsaný znak jsou dva datové typy používané v programování C. Nepoužívaný a podepsaný char slouží k ukládání znaků a skládá se z oblasti 8 bitů. Nepodepsané znaky mají hodnoty mezi 0 a 255, zatímco podepsané znaky mají hodnoty od -128 do 127 (na stroji s 8bitovými bajty a dvěma doplňkovými aritmetiky).
C90 umožnil C používat klíčová slova podepsaná a nepodepsaná znakem. Je důležité si uvědomit, že se používají pouze při manipulaci s malými celočíselnými hodnotami. Podepsaný znak a nepodepsaný char jsou oba 8bitové bajty na 16bitovém počítači. Primárně se liší v rozsahu, který reprezentují. Rozsah nepodepsaného znaku je 0 až 255, zatímco velikost znaku char nebo podepsaného char je -128 až 127.
Transformace char na hodnoty int se provádí automaticky C. Je však stále závislá na stroji, který rozhodne, že výsledek bude negativní nebo ne. Velké písmeno A odpovídá celé hodnotě 65.
Pojmy nepodepsané a podepsané používané se znakem znamenají, že pokud je obsah těchto osmi bitů interpretován na celé číslo, mohou tyto výrazy změnit. Typ datových znaků je obvykle ve výchozím nastavení typu unsigned. V režimu C ++ a ANSI C však existuje možnost výslovně deklarovat je jako podepsaný nebo nepodepsaný znak. V nepodepsaném znaku se jako bity dat používají 8 bitů, zatímco v paměťové reprezentaci signovaného char 1 bit (nejvýznamnější bit) se používá pro signovaný bit a 7 bitů se používá jako bitů dat. Pokud je signovaný bit 0, znamená to, že číslo je kladné. Je-li podepsaný bit 1, pak je číslo záporné.
Srovnání mezi podepsaným znakem a nepodpory Char:
Podepsaný znak | Nepřihlášen Char | |
Rozsah | -128 až +127 | 0 až 255 |
Typická šířka bitů | 1 byte | 1 byte |
Příklad (x = 10000010) | Signed char x = -2 | Nepodpíná char = 82 |
Zastoupení | 1 bit = signovaný bit 7 bitů = datové bity | 8 bit = datové bity |
Prohlášení | Podepsaný znak b | Neznačené znaky |