Speicher fehler (PSC 30€ TG)

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
  • %05 bringt mir was? Wenn bei Vorwahl 276 steht, ich will das vor 276 eine 0 steht..?

  • Entweder, du nutzt Goldkillers Vorschlag/Funktion um die Null vornedran zu bekommen, oder wandelst den Integer in einen String um und speicherst die Handynummer dann auch als String.


    Goldkiller: Hö :-O
    Hab meinen Post editiert ;).
    Speicher fehler (PSC 30€ TG)


    edit: Aahh Goldkiller :D Wegen deiner Bearbeitung ist MEIN edit weg^^ Yo, hab dich falsch verstanden, dachte du meintest mich damit auch ;D
    @BlackAce: Fass' dir doch mal bitte an deinen eigenen Kopf, bevor du andere verurteilst, weil sie wegen 30€ angeblich falsche Antworten geben. Der Vorschlag den du gebracht hast, ist exakt das selbe, was anfangs das Problem von B3ar war.

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    2 Mal editiert, zuletzt von Padarom ()

  • %05d bewirkt das zu 100% eine 5 stellige Zahl oder größer ausgegeben wird,
    wenn die Zahl kürzer ist werden 0en hinzugefügt

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Also du kannst es entweder so machen:



    Oder so: Musst aber das Abspeichern und Auslesen anpassen:



    Und BlackAce:



    "HUST HUST"


    Gruss: Sonic

    I didn't hit you. I high fived your face.

  • @BlackAce: Fass' dir doch mal bitte an deinen eigenen Kopf, bevor du andere verurteilst, weil sie wegen 30€ angeblich falsche Antworten geben. Der Vorschlag den du gebracht hast, ist exakt das selbe, was anfangs das Problem von B3ar war.

    Das möchte er dir damit sagen. Und ich auch :whistling: Will dich damit nicht angreifen, ich glaube du weißt, was ich damit sagen will ;)

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Tut mir leid wenn ich wieder einen Scritt schneller war als ihr -.-


    Ich dachte es wäre logisch das man das in Verbindung mit diesem Code machen sollte
    format(stringh, 256, "Deine neue Handynummer: %09d",strval(nummer));
    Also mal selber überlegen bevor man wieder irgendjemanden anschuldigt ja?


    sonic
    Das ist nur ein d zuviel^^

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Leute chillt mal ;)


    Das kein Spam Thread :)


    Ich werde das von Goldkiller mal nehmen. Melde mich dann.


    /EDIT:


    Ich seh grad, das kapier ich nicht, was er meint. Kann mir das wer schnell machen, so das davor die 0 steht..?


  • Ich muss dich enttäuschen, denn dies entspricht nicht seinen Vorstellungen.



    //EDIT
    Andere Frage: Bist du sicher das das geht?


    |GXR|B3ar liest du überhaupt was ich poste?



    Gruss: Sonic

    I didn't hit you. I high fived your face.

    Einmal editiert, zuletzt von Sonic Hedgehog ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Dann drück' dich das nächste mal bitte verständlicher aus, damit es nicht zu solchen Missverständnissen kommt. Ich könnte hier jetzt einen kurzen Text schreiben, wieso das wohl missverstanden wurde, aber im Interesse aller lass' ich das einfach und melde mich mal von dem Thema vorerst ab, bevor das in Spam ausartet. Und glücklicherweise muss ich mich vor niemandem rechtfertigen, was meine Meinung angeht. Erstmal gucken wie B3ar sich entscheidet/wessen Vorschlag er nutzt, dann kann man weitersehen.


    Aber als kleine Bemerkung, was mir wieder einfällt: Die Nachricht wurde ja korrekt ausgegeben, es ging lediglich um die Speicherung der Handynummer, da diese nicht mit den Nullen stattfand.


    Mit freundl. Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Natürlich,
    wenn man beides kombiniert spart man sich eine Variable -.-


    Wir vergleichen
    ich lass mal die deklaration von nummer und strigh weg...
    //deine Vorstllung
    new vorwahl = 276;
    format(nummer, sizeof nummer,"%05d%d%d%d%d",vorwahl,random(9),random(9),random(9),random(9));
    format(stringh, 256, "Deine neue Handynummer: %09d",strval(nummer));
    //meine Vorstellung
    format(nummer, sizeof nummer,"00276%d%d%d%d",random(9),random(9),random(9),random(9));
    format(stringh, 256, "Deine neue Handynummer: %09d",strval(nummer));
    Ist irgendwie sehr ähnlich und funktioniert beides


    BTW:
    Lass einfach mal die Komplettzitierung
    besonders wenn die so scheiße aussieht.

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Genau wie Padarom es sagt. Es wurden von Anfang an die 0 nicht gespeichert, was ich später erst bemerkt habe, sondern die Zahlen *danach, das von Sonic, ist ja das selbe was ich vorher hatte oder nicht?

    format(nummer, sizeof nummer,"0276%d%d%d%d",random(2),random(2),random(1),random(1));
    SpielerInfo[playerid][pHandynummer] = strval(nummer);


    Sonics

    format(nummer, sizeof nummer,"00276%d%d%d%d",random(9),random(9),random(9),random(9));

  • Im Prinzip ja,
    nur wird deine Handynummer speicherung nicht funktionieren.
    Das müsstest du über format oder strmid speichern, solange deine Variable Handynummer auch ein String ist

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • so nun also:
    if(strcmp("/handy",cmdtext,true) == 0)
    {
    new nummer[10],stringh[36];
    format(nummer, sizeof nummer,"00276%d%d%d%d",random(9),random(9),random(9),random(9));
    SpielerInfo[playerid][pHandynummer] = nummer;
    format(stringh, 256, "Deine neue Handynummer: %s",nummer);
    SendClientMessage(playerid,rot,stringh);
    return 1;
    }
    Vorteil:
    So wird es in einem String gespeichert und benötigst das von Goldkiller nicht.


    Nachteil:
    Das Speichern, Laden und die Textausgabe muss angepasst werden.


    Oder du machst es so:


    if(strcmp("/handy",cmdtext,true) == 0)
    {
    new nummer[8],stringh[35],vorwahl = 276;
    format(nummer, sizeof nummer,"%05d%d%d%d%d",vorwahl,random(9),random(9),random(9),random(9));
    SpielerInfo[playerid][pHandynummer] = strval(nummer);
    format(stringh, 256, "Deine neue Handynummer: %09d",strval(nummer));
    SendClientMessage(playerid,rot,stringh);
    return 1;
    }


    Vorteil:
    Die Nullen werden durch den Tipp von Goldkiller hinzugefügt.


    Nachteil:
    Die Nullen werden nicht in der ini gesaved.
    Jede Textausgabe muss Angepasst werden.


    So nun entscheidest du.


    Gruss: Sonic

    I didn't hit you. I high fived your face.

    Einmal editiert, zuletzt von Sonic Hedgehog ()

  • Okay, Sonic langsam versteh ich dich.


    Mit deinem Code, steht vor 276 eine 0 ?

  • Mach aus deiner Variable pHandynummer ein string und gut ist,


    sonic:
    Mit mir kann man sehr wohl reden,
    aber du scheinst es nicht zu verstehen,
    es ist das gleiche als wir uns damals über die returns in customs Funktionen unterhalten haben.
    Du hast es einfach nicht verstanden.

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Speichere/Lade es als String anstatt als Integer, dann sollte es eigentlich klappen.

    Ich denke, dass das genau das ist, was du willst. Die Variable, in der deine Handynummer gespeichert wird zum String umdeklarieren und in der ini als String, statt als Integer speichern.
    Ansonsten aber BlackAce's Beitrag berücksichtigen und die Handynummer nicht mit SpielerInfo[playerid][HandyNummer] = ... zuweisen, sondern mit format(SpielerInfo[playerid][HandyNummer], sizeof ..., ...)


    Mit freundl. Grüßen
    Padarom


    edit: Mir fällt gerade auf, dass mein Vorschlag von anfang an eigentlich richtig war (wenn er denn richtig ist?), aber wir alle um den heißen Brei geredet haben :D

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Da kommen wir der sache schon näher Padarom ;)


    Also wie jetzt mit format(.. ?


    Padarom, nein da hat er die 0 nicht genommen.

  • Wie gesagt, die Variable nicht als Integer, sondern als String deklarieren und auch als String abspeichern/laden.
    Zuweisen dann wie folgt:
    format(SpielerInfo[playerid][HandyNummer], sizeof SpielerInfo[playerid][HandyNummer], nummer);

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen