binärstelle von integer extrahieren
-
- User
- Beiträge: 728
- Registriert: Sonntag 22. September 2002, 08:32
- Wohnort: Sauerland
- Kontaktdaten:
Das kommt davon, wenn man der (python-) Suche ungeprüft glaubt. Die Operatoren sind ja ganz schön versteckt. Habe sie dann doch noch in der Referenz Abschnitt 6.9 gefunden. Am besten Ausdrucken und an die Wand nageln damit man sie immer im Blickfeld hat.
-
- User
- Beiträge: 206
- Registriert: Freitag 13. März 2015, 18:36
Da müsste bei Cython dochVielleicht in PyPy, aber in CPython ist `int` ja doch etwas von dem simplen Datentyp der in ein Prozessorregister passt, entfernt.
Code: Alles auswählen
ctypedef unsigned long long ULLong
i = ULLong
i = 2**63
print(i)
Das ist dann doch direkt der 64bit Integer von C oder?
Falls ``unsigned long long`` ein 64-Bit-Integer ist, dann ist das ein 64-Bit-Integer, ja. Falls nicht, dann natürlich nicht. Ich benutze in C lieber die Definitionen aus `inttypes.h` wenn ich feste Bitbreiten brauche, das ist dann eindeutig.
-
- User
- Beiträge: 206
- Registriert: Freitag 13. März 2015, 18:36
und wie kann ich das in Cython nutzen?
außerdem habe ich gemerkt, das wenn ich einen 64bit integer zurückgebe, er dann zu einem normalen python int wird. kann ich dass verhindern?
außerdem habe ich gemerkt, das wenn ich einen 64bit integer zurückgebe, er dann zu einem normalen python int wird. kann ich dass verhindern?
@Pygoscelis papua: Die Headerdatei inkludieren und einfach verwenden würde ich sagen.
Was willst Du denn beim Rückgabewert verhindern? Mit C-Integer-Datentypen kann Python nichts anfangen, das kennt nur Python-Objekte. Wie hättest Du Dir das denn vorgestellt?
Was willst Du denn beim Rückgabewert verhindern? Mit C-Integer-Datentypen kann Python nichts anfangen, das kennt nur Python-Objekte. Wie hättest Du Dir das denn vorgestellt?