hallo.
ich habe einen BIGINT in meiner sql, damit geht es auch höher als 2,1 Mrd. wie kann ich sowas in pawn umsetzen?
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Sollte auch so gehen, ansonsten versuch es mit Float
-
wenn ich es so mache
new bigint:abc;
abc=5;bekomme ich einen tag mismatch, und float ist doch nur für kommazahlen -
new variable = Integer
new Float:variable = FloatMeines wissens nach gibt es eine Art bigint nicht. Zumindest wird das nicht im Wiki aufgeführt
-
ja Hagi deshalb frag ich ja
-
in Pawn gibt es kein longint und shortint, hast du es schon mit einem normalen Integer versucht ?
Pawn ist halt nur ein Nachbau der Sprache C mit den Basis Datentypen soweit ich weiß. -
ja ein normaler int geht nur bis 2,1 mrd
-
Bist du dir sicher dass du BIGINT überhaupt in deiner Database brauchst?
Wäre vielleicht Hilfreich wenn du den Zweck für dein BIGINT angibst.Zitatja ein normaler int geht nur bis 2,1 mrd
Quatsch.
−2.147.483.648 bis 2.147.483.647
//Edit: Sorry,Hab Millionen gelesen,nicht Milliarden -
also es geht um sowas:
das ist der int:
01101 (nur dass es ein paar mehr 0 und 1 sind)
das da oben bedeutet, er ist in den fraktionen 2,3 und 5, aber nicht 0 und 4. damit hat man dann aber höchstens 5 fraktionen. in einem int gehen, glaub ich 32 oder so. ich will aber mehr, also bigint... -
Ich verstehe was du meinst,vor der gleiche Frage stand Ich auch schon mal.
Du arbeitest also auch direkt mit Bits,richtig?
Ich weiss da auch keinen einfachen Weg, wie man es direkt verarbeiten könnte mit mehr als 32 Teams o.Ä. . Das Einzige was mir damals dazu einviel war, ein eine weitere Variable zu erstellen um dort alle Bits zu setzen die über 32 sind bzw FRAKTION_XYZ - 32.
Würde mich aber auch interessieren ob jemand dafür eine einfachere Lösung hat. -
will ja nicht pushen aber^^
-
Ach willst nicht pushen xD
Ehm probiers wirklich mal mit Float, was spricht dagegen?, ansonst mal mit double versuchen.
-
beim float hab ich die operatoren & | und ~ nicht...
-
was ist denn ~ ?
Ehm, mit double schon versucht?
-
Zitat
/*----------------------------------------------------------------------------*-
===========================
Y Sever Includes - Bit Core
===========================
Description:
Provides functions for bit manipulation and bit arrays greater than 32bits.
The arrays are usually bigger than required due to cell boundaries but this
shouldn't cause a major problem (bit tests on the 101st bit of a 100 bit
array won't return 0 for out of bounds, but the 129th will).
Legal:
Copyright (C) 2007 Alex "Y_Less" Cole
Mit dem Include aus dem Anhang ist es möglich.
new Bit: Blabla[MAX_PLAYERS][5]; // 5 * 32 Flags können dann theoretisch gesetzt werden.Zitatwas ist denn ~ ?
Ehm, mit double schon versucht?
Bitmanipulation
Hab das schon mal hier im Forum ansatzweise erklärt gehabt --> Klick -
oh danke goldkiller das sieht gut aus
-
breadfish.de
Hat das Thema geschlossen.