Jaki jest prawidłowy sposób iteracji po wektorze w C ++? Rozważ te dwa fragmenty kodu, ten działa dobrze: for (unsigned i=0; i < polygon.size(); i++) { sum += polygon[i]; } i ten: for (int i=0; i < polygon.size(); i++) { sum += polygon[i]; } który generuje warning: comparison between signed …
Czy słusznie mogę powiedzieć, że różnica między liczbą całkowitą ze znakiem i bez znaku jest następująca: Unsigned może zawierać większą wartość dodatnią i brak wartości ujemnej. Unsigned używa bitu wiodącego jako części wartości, podczas gdy wersja podpisana używa bitu najbardziej w lewo, aby określić, czy liczba jest dodatnia czy ujemna. …
Dlaczego Java nie obsługuje obsługi liczb całkowitych bez znaku? Wydaje mi się, że jest to dziwne pominięcie, biorąc pod uwagę, że pozwalają one na napisanie kodu, który rzadziej powoduje przepełnienie na nieoczekiwanie dużych danych wejściowych. Co więcej, używanie liczb całkowitych bez znaku może być formą samokontroli, ponieważ wskazują one, że …
Nigdy nie rozumiem, jak wydrukować unsigned longtyp danych w C. Załóżmy, że unsigned_foojest unsigned long, a następnie próbuję: printf("%lu\n", unsigned_foo) printf("%du\n", unsigned_foo) printf("%ud\n", unsigned_foo) printf("%ll\n", unsigned_foo) printf("%ld\n", unsigned_foo) printf("%dl\n", unsigned_foo) I wszystkie drukują jakiś -123123123numer zamiast tego, unsigned longktóry mam.
Czy istnieje sposób na zadeklarowanie niepodpisanej int w Javie? Albo pytanie może zostać sformułowane w ten sposób: Co to jest odpowiednik Java bez znaku? Żeby powiedzieć kontekst, w którym patrzyłem na implementację Javy String.hashcode(). Chciałem przetestować możliwość kolizji, gdyby liczba całkowita wynosiła 32 bez znaku int.
Próbuję przekonwertować podpisany bajt na niepodpisany. Problem polega na tym, że dane, które otrzymuję, są niepodpisane, a Java nie obsługuje bajtu bez znaku, więc kiedy odczytuje dane, traktuje je jako podpisane. Próbowałem go przekonwertować za pomocą następującego rozwiązania, które otrzymałem z Stack Overflow. public static int unsignedToBytes(byte a) { int …
Wiem, pytanie wydaje się dziwne. Programiści czasami myślą za dużo. Proszę czytaj dalej ... W zastosowaniach CI signedi unsignedwielu liczbach całkowitych. Podoba mi się fakt, że kompilator ostrzega mnie, gdy robię takie rzeczy, jak przypisywanie liczby całkowitej ze znakiem do zmiennej bez znaku. Otrzymuję ostrzeżenia, jeśli porównam ze znakiem liczb …
Jestem taki zdezorientowany size_t. Szukałem w Internecie i wszędzie wspomniałem, że size_tjest to typ bez znaku, więc może reprezentować tylko wartości nieujemne. Moje pierwsze pytanie brzmi: jeśli jest używany do reprezentowania tylko wartości nieujemnych, dlaczego nie użyjemy go unsigned intzamiast size_t? Moje drugie pytanie brzmi: są size_ti unsigned intwymienne, czy …
W C ++ lubiłem mieć dostęp do 64-bitowej liczby całkowitej bez znaku, via unsigned long long intlub via uint64_t. Wiem, że w Javie długie są 64 bity. Jednak są podpisane. Czy jest dostępny długi (długi) bez znaku jako prymityw Java? Jak tego używam?
Natknąłem się na kod kogoś, kto wydaje się sądzić, że istnieje problem z odejmowaniem liczby całkowitej bez znaku od innej liczby całkowitej tego samego typu, gdy wynik byłby ujemny. Tak więc taki kod byłby niepoprawny, nawet gdyby działał na większości architektur. unsigned int To, Tf; To = getcounter(); while (1) …
C ++ 20 wprowadził std::ssize()bezpłatną funkcję, jak poniżej: template <class C> constexpr auto ssize(const C& c) -> std::common_type_t<std::ptrdiff_t, std::make_signed_t<decltype(c.size())>>; Wydaje się static_cast, że możliwa implementacja polega na przekształceniu wartości zwracanej size()funkcji składowej klasy C na jej podpisany odpowiednik. Ponieważ size()funkcja składowa C zawsze zwraca wartości nieujemne, dlaczego ktoś miałby chcieć …
Widziałem ten unsigned„bez typu” typ używany kilka razy, ale nigdy nie widziałem jego wyjaśnienia. Przypuszczam, że istnieje odpowiedni signedtyp. Oto przykład: static unsigned long next = 1; /* RAND_MAX assumed to be 32767 */ int myrand(void) { next = next * 1103515245 + 12345; return((unsigned)(next/65536) % 32768); } void mysrand(unsigned …
Czy słowo kluczowe unsigned ma domyślnie określony typ danych w C ++? Próbuję napisać funkcję dla klasy dla prototypu: unsigned Rotate(unsigned object, int count) Ale tak naprawdę nie rozumiem, co unsignedto znaczy. Nie powinno tak być, unsigned intczy coś?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.