Zum Inhalt springen

Klotzkopp

Mitglieder
  • Gesamte Inhalte

    9912
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    3

Alle Inhalte von Klotzkopp

  1. Wir wollen den Fehler reproduzieren, damit wir ihn selbst analysieren können. Mit deiner Fehlerbeschreibung allein kommen wir ja offensichtlich nicht weiter. Nur weil du den Sinn der Hilfe nicht verstehst, ist sie nicht inkompetent. Du trittst hier sehr arrogant und beratungsresistent auf. Du sollst nicht fix irgendwas posten, von dem du glaubst, dass es dasselbe Fehlverhalten erzeugt. Dein Beispielprogramm kompiliert mein Visual C++ ohne Fehler. Hast du wirklich geprüft, ob dein Compiler bei genau diesem Programm den Fehler erzeugt? Um es noch mal ganz klar zu sagen: Wir brauchen den exakten Code, der den Fehler erzeugt (auf das absolut notwendigste reduziert), und wir brauchen die komplette Fehlermeldung (nicht "will er nicht").
  2. Wenn du deine Ausdrucksweise nicht vom Kindergartenniveau wegbekommst, bist du beim nächsten Anlass weg. Zeig ein vollständiges Minimalprogramm, das das Problem reproduziert, und die Fehlermeldung dazu. Dann sehen wir ja, ob das standardkonform ist.
  3. Dein Compiler meckert mit extrem hoher Wahrscheinlichkeit, weil du etwas falsch machst. Leider bietet dieses winzige Codefragment nicht genug Informationen, um zu erkennen, was das ist. Beide gezeigten Codefragmente können, je nachdem, was drumherum steht, richtig oder falsch sein. Also bitte etwas mehr Code-Kontext und weniger Verhunzungen von Firmennamen. Der Wortlaut der Fehlermeldung wäre auch hilfreich gewesen. Oder wolltest du gar keine Hilfe, sondern nur meckern?
  4. Alles, was du wissen musst, steht hier im Thread. Wenn das Ergebnis der Verknüpfung 0 ist, bekommst du false, ansonsten true. Damit ist klar, dass alle Bits entscheiden, denn sobald auch nur ein Bit gesetzt ist, kommt ja nicht mehr 0 heraus. Nein, hast du nicht. Beispiel erstes Bit: 1 UND 0 ergibt 0, bei dir steht 1. 11010100 00000001 UND-Ergebnis: 00000000
  5. Falls die dritte Zeile das Ergebnis darstellen soll: Das ist keine UND-Verknüpfung, du hast einfach die erste Zeile abgeschrieben. Alle Bits entscheiden. Wenn im Ergebnis auch nur ein Bit stehen bleibt (egal welches), ist das Ergebnis wahr.
  6. C wird bei Microsoft etwas stiefmütterlich behandelt.
  7. Wenn dein Compiler den "neuesten" C-Standard (C99) noch nicht unterstützt, dann darfst du Variablen nur am Anfang eines Blocks definieren, nicht mittendrin.
  8. Zeig bitte ein vollständiges Minimalbeispiel, das den Fehler reproduziert. Mit hoher Wahrscheinlichkeit liegt der Fehler in einem nicht gezeigte Code-Teil oder ist durch die Code-Struktur begründet.
  9. Von hinten durch die Brust ins Auge. Wenn du beim Anlegen der Spalten Subitem-Indizes vergeben hast, findest du das im iSubItem-Member der NMLISTVIEW-Struktur wieder.
  10. Welche Benutzeroperation meinst du genau mit "angeklickter Spalte"?
  11. Kommt drauf an. Das ist die Holzhammermethode, damit hebelst du den kompletten Namespace aus. Und der ist ja nicht zum Spaß da. Der Namespace hat den Sinn, Namenskonflikte zu vermeiden. Daher sollte man using-Direktiven sparsam einsetzen, und so lokal wie möglich halten. In Headerdateien beispielsweise haben using-Direktiven nichts verloren.
  12. Du rückst deinen Code nicht ordentlich ein. Das is so ein Durcheinander, dass man nicht erkennen kann, wo die if-Blöcke aufhören. Außerdem lieferst du mit "klappt nicht" eine völlig unzureichende Problembeschreibung. Ein grundsätzlicher Tipp: Zeilenkommentare leitet man mit // ein, nicht mit \\
  13. Vergiss bitte das alte Programm. Setz diese Liste von Anweisungen in C++ um.
  14. Die Bedeutung von MerkBereich ist mir nicht ganz klar. Im Prinzip brauchst du nur den Zähler: 1. Sorge dafür, dass du dir 10 Zahlen merken kannst. 2. Zähler auf 0 setzten. 3. Frage den Benutzer nach einer Zahl. 4. Wenn die Zahl nicht zwischen 0 und 20 liegt, gehe zu Schritt 8. 5. Zahl merken an der Position, die dem Wert des Zählers entspricht. 6. Zähler um 1 erhöhen. 7. Wenn Zähler kleiner als 10, nochmal zu Schritt 3. 8. Ende.
  15. Das sieht schon ziemlich gut aus. Was noch fehlt, ist das Merken und ist die Verwendung des Zählers für den Merk-"Platz".
  16. Nicht denselben Code wiederholen. Springen. Spring in deinem Programm wieder nach oben, so wie in meinem Beispiel. Und benutz den Zähler, um den Merkbereich auszuwählen. Du brauchst dir keinen "Bereich" zu merken, du hast doch den Zähler. Und du kannst den Zähler abfragen, um zu ermitteln, wann du das Programm beenden kannst. Hier ist mal ein Beispiel eines einfacheren Programms, ohne Bereichsprüfung und ohne "Merken", einfach nur Eingabe von 10 Zahlen, mit denen nichts gemacht wird: 1. Setze Zähler auf 0 2. Frage den Benutzer nach einer Zahl 3. Erhöhe Zähler um 1 4. Wenn Zähler kleiner als 10 ist, gehe zu Schritt 2 5. Ende Prinzip klar geworden?
  17. Das hat mit C++ erst mal gar nichts zu tun. Du hängst noch am Schritt davor. Was soll denn genau passieren, wenn der Benutzer eine falsche Zahl eingibt? Soll das Programm abbrechen, oder soll die Eingabe wiederholt werden? Wenn du einfach zehnmal denselben Code hintereinander schreibst, ist der Zähler sinnlos. Denn dann hast du dir immer 10 Zahlen gemerkt, wenn du bei Schritt 8 ankommst. Und Schritt 8 ist auch unsinnig. Wenn du dir 10 Zahlen gemerkt hast, gehe zu Schritt 9. Und wenn nicht? Auch Schritt 9, denn der kommt ja nach 8. Du führst also nach Schritt 8 immer Schritt 9 aus, die Prüfung bewirkt nichts. Versuch mal, das so zu formulieren, dass du den Zähler nicht setzt, sondern um 1 hochzählst und in Abhängigkeit vom Wert des Zählers Sprünge ausführst.
  18. Der Hinweis mit dem Kochrezept ist echt nach hinten losgegangen.
  19. Mit Kochrezept meinte ich, dass du dein Problem in einfache Schritte zerlegen sollst, nicht irgendwelche Geschichten mit Zutaten und Rühren ausdenken. Ungefähr so: 1. Sorge dafür, dass du dir 10 Zahlen merken kannst. 2. Frage den Benutzer nach einer Zahl. 3. Wenn die Zahl nicht zwischen 0 und 20 liegt, gehe zu Schritt 2 4. Merk dir die Zahl. 5. Wenn du dir weniger als 10 Zahlen gemerkt hast, gehe zu Schritt 2 6. Ende Das könnte man noch weiter verfeinern, indem man das "Merken" z.B. durch 10 Kästchen ersetzt und einen Zähler einbaut. Bekommst du das hin?
  20. Nicht als Programm. Auf Deutsch. Versuch, es wie ein Kochrezept oder eine Bastelanleitung zu formulieren. Das ist nicht genau genug: Was soll mit -1 verglichen werden, und was wird abgebrochen?
  21. Was soll das jetzt bedeuten? Willst du nicht tun, was wir vorschlagen, weil du nicht glaubst, dass es hilft?
  22. Beschreibe, wie dein Programm das Problem löst.
  23. Formulier deinen Algorithmus einmal in normalem Deutsch, ohne C++. Dann sehen wir, ob's am Algorithmus hängt, oder an der Umsetzung in C++.
  24. Hast du meinen 2. Beitrag überhaupt gelesen?
  25. Deine Schleifenbedingung prüft nur i, also deine Zählvariable. Wenn du zusätzlich prüfen willst, ob die eingebene Zahl im gewünschten Bereich liegt, musst du, bevor du i hochzählst, zahl prüfen und dann gegebenenfalls i nicht hochzählen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...