Sammeltopic für kurze Codingfragen

Wir sammeln alle Infos der Bonusepisode von Pokémon Karmesin und Purpur für euch!

Zu der Infoseite von „Die Mo-Mo-Manie“
  • Dass der das zuerst macht, war mir gar nicht klar, damn it (jetzt ergibt die Fehlermeldung auch richtig Sinn). Habe es nun aber mit deiner Variante gemacht, meinen ListIterator noch ein bisschen bearbeitet und es funktioniert tatsächlich! Vielen, vielen Dank (auch, dass ihr euch die Mühe gemacht und hier rein gesehen habt)! <3 Ich hätte nicht gedacht, dass das jemals klappt und dann auch noch so schnell. Jetzt kann ich endlich mal ordentlich weiter machen. (:


    /Edit: @QueFueMejor: Geht klar, tut mir leid wegen der Umstände. ^^'

  • Ich habe noch mal eine kurze Frage bezüglich SQL.


    Ich kann die Dinger ja munter mit "order by" sortieren. Ich kann auch dann mir nur mit desc limit 3 von mir aus die obersten drei anzeigen lassen.
    Gibt es auch eine Möglichkeit, mit der ich von mir aus nur die Ergebnisse auf dem Platz 5 bis 10 in der sortierten Liste ausgeben lassen kann?


    EDIT: Danke Nuffin. Ja, ist MySQL. :)

  • Kommt auf den SQL-Dialekt an, den du benutzt. In MySQL (ist das doch, oder?) geht das wie folgt:


    SQL
    SELECT ... FROM ... ORDER BY ... LIMIT a,b;


    heißt "überspringe a elemente und nimm dann die ersten b"

    FC (PKMN Y): 3282-3144-2343 — Safarityp: Pflanze (Maracamba, Folikon, Tangela) — Bei Interesse schickt mir einfach ne PM ;)


    Testet meine Pokemon-Checkliste für Gen. 1 bis 6 (für Sammler, und solche die es werden wollen – jetzt mit vollständiger Habitatsliste für alle Editionen – OR/AS noch minimal unvollständig)

  • Hab ma wida ne Frage zu C++ :)
    Und zwar hab ich ein Problem, finde selbst aber keine passende Lösung bei Google
    ich möchte in der Konsole auch umlaute(ö,ü,ä) eingeben können und das dann in einer Textdatei speichern.


    Das "test-ü" kann er ja speichern, nur die von der Eingaben nicht


    Benutze Dev-C++ als Compiler


    Glumanda

  • Das Problem liegt am Zeichensatz, der in der Konsole (zumindest von Windows) nicht den üblichen Standards (Unicode/UTF-8 oä) entspricht (müsste eine der landesspezifischen Codierungen oder die amerikatische sein, weiß ich gerade nicht.)
    Also 7b ASCII kann ohne probleme dargestellt werden, da jedoch äöü und andere "Sonderzeichen" erst mit Erweiterungen, Codepages usw. eingeführt wurden, muss man erst ein paar anpassungen vornehmen. Vermutlich dürften Lösungen sein:
    Codierung der Konsole herausfinden und...
    ...Codierung des Quellcodes anpassen
    ...Codierung der gesuchten Zeichen nachschlagen und nun passend eintragen (als char oder wie auch immer das in C/++ geht)
    ...Strings wärend der Laufzeit umcodieren


    @edit
    oder wie unten, sry, falls ich hier irgendwo Blödsinn geschrieben habe; programmiere primär in anderen sprachen.

  • Statt der normalen ASCII-Stringoperationen und -Streams solltest du Unicode Strings benutzen (std::wcin, std::wcout, std::wstring, std::wfstream, L"Ünicöde Text"). Sonst kann C++ ohne nerviges hin- und herkonvertieren kein Unicode (mal ganz abgesehen davon, dass wegen Compiler-Quirks viele C++ Programme komische Dinge tun, wenn die Konsole ein komisches Encoding verwendet)

    FC (PKMN Y): 3282-3144-2343 — Safarityp: Pflanze (Maracamba, Folikon, Tangela) — Bei Interesse schickt mir einfach ne PM ;)


    Testet meine Pokemon-Checkliste für Gen. 1 bis 6 (für Sammler, und solche die es werden wollen – jetzt mit vollständiger Habitatsliste für alle Editionen – OR/AS noch minimal unvollständig)

  • Hey, danke
    aber auch bei dem wstring hab ich das gleiche Problem
    Wenn ich z.B. Hällö eingebe, steht in der Datei dann: H„ll”ü
    Auch mit der so angepriesene setlocale(LC_ALL, "de_DE") Methode


  • Öhm... Hilfreich wäre die Information, um welche Methode es sich hier handelt. ^^ Auf Basis der Signatur würde ich mal auf Stream.Read(byte[], int, int) tippen, aber sicher sein können wir da so nicht.


    Falls ich richtig liege:

    • Im byte-Array werden die ausgelesenen Daten gespeichert, ja.
    • offset ist die Anzahl von Bytes, die im Buffer übersprungen werden sollen (offset = 0 =>an den Beginn des Buffers schreiben), die Zahl muss also >= 0 sein. Um das mit anderen Worten auszudrücken: Setzt du zB offset = 10, dann wird von der Read-Methode das erste ausgelesene Byte in array[10] geschrieben!
  • Nein, aber es gibt Stream.Seek (springt an die angegebene Position) und Stream.ReadByte (liest das Byte an der aktuellen Position aus und verschiebt die aktuelle Position um ein byte nach vorne)

    FC (PKMN Y): 3282-3144-2343 — Safarityp: Pflanze (Maracamba, Folikon, Tangela) — Bei Interesse schickt mir einfach ne PM ;)


    Testet meine Pokemon-Checkliste für Gen. 1 bis 6 (für Sammler, und solche die es werden wollen – jetzt mit vollständiger Habitatsliste für alle Editionen – OR/AS noch minimal unvollständig)

  • Hab das Problem jetzt so gelöst, wie @prime-dialga sagte: Codierung der Konsole durch den Quellcode ersetzen


    Hab jetzt aber wieder ein anderes Problem ^^
    Bin auf der Suche nach einen vernünftigen Code, der (ohne irgendwelche dll oder sonst was, die man erst auf seinen PC installieren muss) Zip-Datei mit Inhalt erstellen/entpacken kann
    Dabei bin ich auf diese Seite gestoßen.
    Jetzt beim compilieren bekomme ich immer die Fehler " undefined reference to `IID_IShellDispatch' " und " undefined reference to `CLSID_Shell' "
    Hab jetzt im Linker schon " -static-libgcc -lWininet -lole32 -luuid -Wno-write-strings -loleaut32 -lShell32 " angehängt und Google findet nix dazu :(


    Kann mir jemand dazu helfen/Tipp geben oder kennt vllt sogar jemand einen andern Code, der Funktioniert?
    Compiler: Dev-C++


    Glumanda

    Sei selbst die Veränderung, die du in der Welt sehen willst ~Arleen Lorrance

    Einmal editiert, zuletzt von HappyBoy ()

  • Ich könnte mir zwei Gründe vorstellen, weshalb das passiert. Ich weiß nicht so genau, wofür die Variablen stehen, aber vom Codesnippet aus gesehen wurden diese Variablen gar nicht definiert, was natürlich auch erklären würde, weshalb der Compiler diese nicht findet. Wenn es sich dabei allerdings um vordefinierte Systemvariablen handeln sollte, liegt es wohl eher daran, dass das Beispiel in Visual Studio programmiert wurde. Microsoft verwendet für Visual Studio keine üblichen Standard-DLLs, sondern modifizierte, weshalb es vorkommt, dass Dinge, die in Visual Studio möglich sind, mit anderen Programmierumgebungen nicht funktionieren.
    Möglicherweise wäre es wirklich sinnvoller, das mit einer Zusatz-Library zu machen, hier findet sich eine gute Erklärung, wie das mit Minizip/Zlib funktioniert.

  • Jetzt versteh ichs gar nix mehr ?(


    Ich hab jetzt mal deinen Link ausbrobiert und die Zlib (die Minizip enthält) eingebunden und er jammert mir wirder solche Fehler. Von " undefined reference to `zipOpen' " bis " undefined reference to `zipClose' "
    Auf der Seite hat anscheinen jemand das Problem gelöst, aber ich hab keine Ahnung was/wie ich das beim Dev-c++ hin bekomme

  • Ich hab den Ordner der zlib- und der minizip- Dateien in Dev-C++ unter 'Werkzeuge' -> 'Compiler' -> 'Verzeichnisse' in Bibliothek, C-Includes und C++-Includes++ eingetragen


    Hm, hät mir auch den Aufwand mit dem erstellen der minizip sparen können (zlib hab ich hin bekommen, indem ich die makefile.gcc ausführte. Nur bei minizip gibs noch Probleme. Ich kann höchstens schon ne a-Datei erstellen)


    Er hatte ja am ende noch geschrieben, das er die zlibwapi.dll vom zlib125dll.zip in /dll32 benutzt, die ich jetzt auch gefunden habe.
    Da is jetzt aber das nächste Problem ^^
    Ich weiß grad ma wie man ne exe erstelllt und das man Headerdateien für Querverweise einbinden muss, aber bei dll ist auch schon Schluss
    Mit #include oder #import wie sonst, funktioniert es jedenfalls nicht
    Kann mir zum einbinden von dll jemand eine Beispiel Code oder ein Tutorial geben?


    Glumanda

    Sei selbst die Veränderung, die du in der Welt sehen willst ~Arleen Lorrance

    Einmal editiert, zuletzt von HappyBoy ()

  • Also, ich gebs auf mit dem Zip in C++
    Ich mach das jetzt ganz umständlich; indem C++ einer VBS-Datei sagt, was sie wohin zippen soll :(
    Da weiß ich wenigsten das - und wie es funktioniert, auch wenn ich nur schätzen kann, wann sie fertig ist mit dem zippen.

  • Ich habe ein Problem beim anzeigen der DV Intervall Methode hier der Code: (Gambas)


    Ich bekomme immer die ausgabe das DV_min gleichgroß DV_max ist.


    Danke für hilfen
    mfg Bisam97