2010-12-07 11 views
35

Co oznacza przyrostek (lub sufiks) U dla następujących wartości?Znaczenie sufiksu U

0U 
100U 
+1

Cóż, niepodpisane? – khachik

+2

-1 dla pytania bez treści. –

+8

Zauważ, że w miejscu, w którym widzisz U, często używa się pisanej małymi literami "u", ponieważ gdy jest napisane wielkimi literami, można je łatwo pomylić ze stałymi heksadecymalnymi. To znaczy. 0xFFFFFFFFu jest bardziej oczywiste niż 0xFFFFFFFFU. –

Odpowiedz

43

Stanowi on unsigned.

Po zadeklarowaniu stałej określa się również jej typ. Innym częstym przykładem jest L, co oznacza long. (i musisz umieścić go dwukrotnie, aby określić stałą 64-bitową).

Przykład: 1ULL.

Pomaga w unikaniu wyraźnych rzutów.

+6

Istnieją również przypadki, w których jest to konieczne. Na przykład stałe całkowe są interpretowane przez kompilator jako liczby całkowite, więc stała taka jak "0xffffffffffffffff" utraci 32-bitowe bity bez sufiksu "ll". – zneak

26

całkowite stałymi C i C++ może ewentualnie posiadać kilka przyrostki:

123u           wartość 123 jest unsigned int
123L             (to małe L) 123 jest podpisany długi
123uL       unsigned long
123LL       podpisane długo długo, 64 bit lub 128 wartość bitu (zależnie od środowiska)
123uLL   unsigned long long