• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Do czego służy ten specyfikator?

Cloud VPS
0 głosów
360 wizyt
pytanie zadane 1 czerwca 2020 w C i C++ przez Sevence Początkujący (280 p.)
Cześć, uczę się c++ od jakiegoś czasu i zastanawia mnie pewna kwestia. Do czego używany jest specyfikator signed, czytałem że każda wartość całkowita jest domyślnie uważana jako dodatnia, więc signed powinno się używać czy nie? Ktoś mi poda jakiś sensowny przykład używania go?

3 odpowiedzi

+1 głos
odpowiedź 1 czerwca 2020 przez Michałełe Nałogowiec (25,600 p.)
edycja 1 czerwca 2020 przez Michałełe

Witam

signed int ma zakres liczb: -2,147,483,647 do 2,147,483,647

unsigned int ma zakres liczb: 0 do 4,294,967,295

(wszystko przy założeniu, że na platformie której piszesz int'y są 32-bitowe)

Więc kiedy stawiać signed?

Signed możesz postawić przed char'em (tak, jest coś takiego jak ujemne chary)

Jedyne jakieś użycie signed chara jakie przychodzi mi do głowy to:

	char  x = 'a', y = 'b';
	unsigned char z = x - y;
	cout << (int)z;

Zmień z na signed i porównaj oba wyniki

komentarz 1 czerwca 2020 przez LuQ232 Mądrala (7,200 p.)
Chyba pomyliłeś zakresy signed i unsigned. Są odwrotnie
komentarz 1 czerwca 2020 przez Michałełe Nałogowiec (25,600 p.)
Rzeczywiście, wkradł mi się błąd :)
komentarz 2 czerwca 2020 przez tkz Nałogowiec (42,060 p.)
Dodatkowo pola bitowe w C i do C++ 14, czy 17.
+1 głos
odpowiedź 2 czerwca 2020 przez j23 Mędrzec (195,240 p.)

Chyba jedyny sensowny przykład użycia signed to użycie go przed typem char, który może być typem ze znakiem lub bez. Dodanie tego specyfikatora daje gwarancje, że to będzie typ ze znakiem.

0 głosów
odpowiedź 1 czerwca 2020 przez 12332112332121 Dyskutant (8,270 p.)
Szczerze mówiąc, nawet nie wiedziałem, że istnieje coś takiego :) Myślę, że to się nie przydaje, w przeciwieństwie do specyfikatora unsigned, który pozwala pomieścić dwa razy większą liczbę niż w zwykłej zmiennej, pod warunkiem, że będzie to zmienna dodatnia.

Podobne pytania

+1 głos
2 odpowiedzi 937 wizyt
pytanie zadane 27 czerwca 2018 w C i C++ przez Hiskiel Pasjonat (22,830 p.)
0 głosów
1 odpowiedź 175 wizyt
pytanie zadane 28 czerwca 2017 w Sprzęt komputerowy przez assassin Gaduła (3,260 p.)
0 głosów
1 odpowiedź 605 wizyt

93,456 zapytań

142,451 odpowiedzi

322,721 komentarzy

62,837 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...