Rozdiel kľúčov: Podpísaný char a nepodpísaný char sú dva dátové typy používané v programovaní C. Nepoužívaný a podpísaný znak sa používa na ukladanie znakov a pozostáva z oblasti 8 bitov. Nepodpísané znaky majú hodnoty od 0 do 255, zatiaľ čo podpísané znaky majú hodnoty od -128 do 127 (na stroji s 8 bitovými bajtami a aritmetickým doplnkom dvoch).
C90 umožnil C používať kľúčové slová podpísané a nepodpísané so znakom. Je dôležité poznamenať, že sa používajú iba pri manipulácii s malými celočíselnými hodnotami. Podpísaný char a nepodpísaný znak sú obidva bitové bity na 16-bitovom stroji. Predovšetkým sa líšia v rozsahu, ktorý predstavujú. Rozsah nepodpísaného znaku je 0 až 255, zatiaľ čo veľkosť char alebo podpísaného znaku je -128 až 127.
Transformácia char na hodnoty int sa vykonáva automaticky C. Avšak stále závisí od stroja, ktorý rozhodne, že výsledok bude negatívny alebo nie. Veľké písmeno A zodpovedá celočíselnej hodnote 65.
Pojmy nepodpísané a podpísané používané so znakom znamenajú, že ak sa obsah týchto ôsmich bitov interpretuje na celé číslo, potom tieto výrazy môžu mať určitý rozdiel. Typ údajov znakov je zvyčajne typu nepodpísaný predvolene. V režime C ++ a ANSI C však existuje možnosť explicitne deklarovať ich ako podpísaný alebo nesignovaný znak. V nepodpísanom char sa používajú 8 bitov ako dátové bity, zatiaľ čo v pamäti sa reprezentuje podpísaný char 1 bit (najvýznamnejší bit) sa používa pre signatovaný bit a 7 bitov sa používa ako dátové bity. Ak je podpísaný bit 0, znamená to, že číslo je pozitívne. Ak je podpísaný bit 1, potom je číslo negatívne.
Porovnanie podpísaného znaku a nepodpísaného znaku:
Podpísaný znak | Nepodpísaný znak | |
rozsah | -128 až +127 | 0 až 255 |
Typická šírka bitov | 1 bajt | 1 bajt |
Príklad (x = 10000010) | Podpísaný znak x = -2 | Nepodpísaná char = 82 |
znázornenie | 1 bit = signovaný bit 7 bit = dátové bity | 8 bit = dátové bity |
vyhlásenie | Podpísaný znak b | Nepodpísaný znak |