%d %s

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • Hallo,


    beim scripten ist mir schön öfters %s %d etc begegnet, gibt es zwischen den beiden einen unterschied? Ist es egal was hinter den % steht? Und kann man auch mehrmals in "" %s verwenden, oder muss jedesmal ein anderes zeichen hinter dem % stehen?


    MfG
    Funfare

  • Zusätzlich noch:


    %i - Dezimal / ganze Zahl (genau das gleiche wie %d)
    %c - Character / ein Zeichen zB. 'a'
    %x - Hexadezimalzahl / zB. 255 würde 0x000000FF schreiben


    Du musst halt je nachdem was du in eine string reinformatieren willst, diese Dinger benutzen zB. :



    new
    name[MAX_PLAYER_NAME],
    Float: health,
    Farbe = 0xFF000000;
    GetPlayerName(playerid, name, MAX_PLAYER_NAME);
    GetPlayerHealth(playerid, health);
    new tmp[128];
    format(tmp, sizeof(tmp), "%s (ID: %d) hat %f Prozent Lebensenergie. Außerdem hat dieser Text hier die Farbe %x.", name, playerid, health, Farbe);
    SendClientMessageToAll(Farbe, tmp);

    2 Mal editiert, zuletzt von Tjong ()

  • Ein Integer ist eine Dezimalzahl


    Öhhmmm? Nein?
    Ein Integer bildet der Rechner, da er mit dem Binärsystem arbeitet und somit kein Minus kennt, also wird ein Integer (ganze Zahlen von -32768 bis +32767) oder Long Integer (ganze Zahlen von -2147483648 b is +2147483647) verwnedet, der Rechner hat seine normalen Dualzahlen jetzt z.B. im 4 Bit Format...
    1101 -*0100 (-3 -4 (-3, da 1101 das Komplement von 0011 ist... 0011 = 3))
    Und das Komplement, also die negative Zahl wird in einem Interger dargestellt... man kan nes sich so vorstellen:
    Man hat 4 Bit zu verfügung, d.h: die größte darstellbare Zahl wäre 1111 also 15 im Dezimalsystem
    Daraus wird der Integer (dieser geht dann von -8 bis +7)...
    Also bis 0111 ist die Zahl im positiven Bereich und ab 1000 im negativen
    * Das - steht da nur zu Vorstelleung, normalerweise addiert der Rechner das Komplement

    3 Mal editiert, zuletzt von KeksOfDeath ()

  • Der Integer ist der Datentyp, die Darstellungsweise von %d und %i gibt aber soweit ich weiß keinen Binärcode sondern Dezimalzahlen aus, womit wiederum Dezimalzahl bei %d und %i besser zutrifft als "Integer" schließlich wird mit %x auch ein Integerwert dargestellt aber nicht als Dezimalzahl sondern als Hexadezimalzahl...


    Außerdem gibt es auch Integer die keinen Negativbereiche haben (die sogenannten unsigned-integer)


    Ich korrigiere also damit meine Aussage:


    Eine Dezimalzahl ist die Darstellungsweise eines Integers.

    Einmal editiert, zuletzt von Tjong ()

  • Ja, Pawno gibt damit eine Dezimalzahl aus... (ich bin der Meinung, dass man mit Pawno auch keine Dualzahlen berechen kann xD)
    In einem Integer werden ganze Zahlen dargestellt, was eigentlich zur darstellung ganzer Zahlen im Binärsystem entwickelt wurde, wobei man das, wo du Recht hast, auch mit jeder anderne Basis machen kann... Jetzt, wenn man ein wenig länger über deinen Post nachdenkt, muss ich einsehen, dass ich dich zu Unrecht kritisiert habe...
    xD
    //EDIT:

    Eine Dezimalzahl ist die Darstellungsweise eines Integers.


    Deine obrige war eigentlich auch richtig, man muss nur erstmal den Sinn verstehen xD

  • Wenn man bei Pawno z.B. 1111+1111 macht, dann rechnet er daraus 2222 (Dezimalsystem)
    Würde man es in Dual rechen würde, würden 30 (dezimal) rauskommen
    Und ich bin mir nicht bewusst, dass man bei Pawno sowas wie "dualzahl(1111+1111);" machen kann^^