-
Data: 2015-09-26 18:57:58
Temat: Re: Konwersja kodu
Od: szemrany <s...@o...off> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Sat, 26 Sep 2015 09:22:13 -0700 (PDT), M.M. wrote:
>> Mianowicie niejaki AK mnie porzucił z pomocą w konwersji kodu z C do
>> Pascala i potrzebuję pomocy.
>> Już prawie wszystko mam przetłumaczone, ale jeszcze pojawiają się
>> wątpliwości. Oto one.
>> Kolejny niejasny moment:
>>
>> ret->trailing_bits = *(ret->bitset + ret->allocated - 1) ? (word_t) ~0 : 0;
> Faktycznie niejasny moment. Nie lepiej unikać takich sytuacji?
Może i lepiej, ale ...kolega chyba nie przeczytał wstępu mojego posta.
To nie mój kod, to kod, który podał mi AK, konkretnie ten:
https://raw.githubusercontent.com/inveniosoftware/in
tbitset/master/intbitset/intbitset_impl.c
a ja go konwertuję do Pascala. Pytam więc o składnię C, która nie jest mi
bliska i proszę o pomoc w zrozumieniu co te konkretne linie przez mnie
cytowane robią.
> Dlaczego nie sprawdzisz jak Twój kompilator na Twojej platformie z Twoim
> opcjami się zachowa?
Jaki mój kompilator? Ja piszę w Delphi :-)
> Na pewno
> typ_calkowity x = 0;
> wyzeruje wszystkie bity
>
> Ustawia się wszystkie bity tak:
> typ_dodatni x = ~((typ_dodatni)0);
>
> Wyrażenie
> ~0
> jest równe -1. Co się stanie gdy wartość ujemną się przypisze do
> typu dodatniego? Odpowiadam pytaniem, po co coś takiego robić?
> Chcesz wiedzieć jak się zachowa kompilator, a czy w ogóle można
> sensownie się zachować, gdy ktoś każe trzymać wartość ujemną w
> typie bez znaku?
Chcę tylko zrozumieć, napisane ludzkim językiem, jak mam intepretować to co
wykonuje ta linia:
ret->trailing_bits = *(ret->bitset + ret->allocated - 1) ? (word_t) ~0 : 0;
Jest to dla mnie niezrozumiałe do końca i pytam.
--
howgh
szemrany
"Trzeba z żywymi naprzód iść, po życie sięgać nowe,
a nie w uwiędłych laurów liść z uporem stroić głowę"
Następne wpisy z tego wątku
- 26.09.15 19:01 bartekltg
- 26.09.15 19:31 szemrany
- 26.09.15 19:35 bartekltg
- 26.09.15 19:47 M.M.
- 26.09.15 19:56 bartekltg
- 28.09.15 09:57 Tomasz Kaczanowski
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-24 Aby WKOOOORWIĆ ekofaszystów ;-)
- 2024-11-22 OC - podwyżka
- 2024-11-22 wyszedł z domu bez buta
- 2024-11-22 Bieda hud.
- 2024-11-24 DS1813-10 się psuje
- 2024-11-23 Białystok => Inżynier bezpieczeństwa aplikacji <=
- 2024-11-23 Szczecin => QA Engineer <=
- 2024-11-23 Warszawa => SEO Specialist (15-20h tygodniowo) <=
- 2024-11-22 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-22 Warszawa => Senior Account Manager <=
- 2024-11-22 Warszawa => Key Account Manager <=
- 2024-11-22 Warszawa => DevOps Specialist <=
- 2024-11-22 Kraków => IT Expert (Network Systems area) <=
- 2024-11-22 Warszawa => Infrastructure Automation Engineer <=
- 2024-11-22 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=