C++: Wie kann ich eine Datei einlesen und deren Infos ausgeben?

1 Antwort

Das Debugging-Tool bietet die Option, sich an einen bestehenden, laufenden Prozess zu hängen. Üblicherweise würde man sich an den Prozess der eigenen Anwendung hängen, die man vorher gestartet hat und im Anschluss könnte man durch die einzelnen Schritte des Programmflusses durchgehen.

Um eine eigene C++-Anwendung zu starten, brauchst du allerdings erst einmal ein C++-Projekt und dazugehörige Buildtools.

Schau zuerst im Visual Studio Installer nach, ob du das Workload Desktop development with C++ installiert hast (via Ändern kannst du nachträglich Workloads installieren, etc.).

In Visual Studio solltest du das Projekttemplate Console App (bzw. Konsolen-App) für C++ beim Erstellen der Anwendung auswählen. Wenn es nicht direkt in der Filterauswahl angezeigt wird, dann suche via Suchfeld direkt nach dem Begriff und achte auf die Tags (es gibt mehrere Templates diesen Namens für unterschiedliche Programmiersprachen).

Die Anwendung generiert dir daraufhin ein C++-Projekt, in dem auch schon eine main.cpp mit main-Funktion liegt. Dieses kannst du anschließend nach deinen Anforderungen modifizieren.

Der Button mit dem grünen Pfeil sollte nun Local Windows Debugger (o.ä.) heißen. Bei Klick wird das Projekt im Debugging-Modus gestartet und ausgeführt. Im Debuggen-Menü findest du ebenso einen Eintrag, um das Projekte ohne Debugger zu starten.

Der Vorteil des Debugging-Modus ist, dass er nach Start der Anwendung bei gesetzten Breakpoints den Programmfluss anhält und dir die Wahl für den weiteren Programmlauf lässt (entweder lässt du das Programm weiterlaufen oder gehst in Einzelschritten durch die folgenden Anweisungen). Du kannst schauen, welche Zwischenwerte zu bestimmten Zeitpunkten berechnet wurden bzw. welche Zustände Variablen haben und wie sie sich verändern. Weiteres dazu kannst du in der Microsoft-Dokumentation nachlesen.

Esinalo 
Fragesteller
 04.06.2023, 20:31

Okay es war scheinbar im falschen Template erstellt, jedoch kommt nun die Fehlermeldung, das es die Datei nicht finden...Fehlermeldung : Fehler C1083 Datei (Include) kann nicht geöffnet werden: "kontaktmanager.h": No such file or directory Datei_Einlesen_Übung G:\Development Projects\Datei_Einlesen_Übung\Datei_Einlesen_Übung\Datei_Einlesen_Übung.cpp 4

0
Esinalo 
Fragesteller
 04.06.2023, 20:35
@Esinalo

Dazu muss ich sagen, ich hab das jetzt auch wieder ne Stunde gegoogelt, und man findet ja an sich viel zum Fehler, jedoch hab ich nichts gefunden was mir wirklich weitergeholfen hat :/ Sowie ich das verstehe, kann es gut sein das die Header und Source Files im falschen Verzeichnis gespeichert sind, jedoch sind sie im gleichen Verzeichnis wie meine .sln Datei gespeichert. Ich habe auch schon versucht diese ins Verzeichnis mit der .cpp Datei von der Main Datei zu legen, was auch nicht funktionierte :/ Vorschlagen tut es mir statt #include "kontaktmanager.h" --> #include "../kontaktmanager.h" --> Dann steht zwar nicht mehr mit Fehler da, aber funktionieren tut es trotzdem nicht :) (Programm lässt sich nicht ausführen, zeigt keine Fehler an, beim ausführen kommt halt dann Fehlermeldung: Das Programm ... kann nicht gestartet werden, Das System kann die angegebene Datei nicht finden

0
regex9  04.06.2023, 21:09
@Esinalo

Die sln-Datei liegt in der Regel außerhalb des Verzeichnisses. Kopiere nicht die Dateien im Dateiexplorer hin und her, sondern lege sie am besten über Visual Studio (im Solution Explorer) an: Rechtsklick auf den Projektnamen > Add > New Item > Header File (wie die Namen auf der deutschsprachigen Oberfläche exakt lauten, kann ich dir gerade nicht schreiben, ich nutze nur die englische Version).

Der richtige Import in main.cpp wäre dann:

#include "kontaktmanager.h"

und die Headerdatei würde im selben Verzeichnis wie die main.cpp liegen.

Dateien, die du via Dateiexplorer in dein Projektverzeichnis kopierst, werden nicht automatisch in das Projekt aufgenommen, also beim Buildprozess auch nicht berücksichtigt. Im Solution Explorer gibt es in der Toolbar einen Button Show all files, um alle Dateien im Projektordner anzuzeigen. Nicht im Projekt enthaltene Dateien werden mit einem roten Icon gekennzeichnet. Via Rechtsklick > Include in Project kann man sie dem Projekt hinzufügen.

Alle berücksichtigten Dateien werden im Solution Explorer automatisch in ihre jeweiligen virtuellen Verzeichnisse geordnet (Header Files, Source Files).

1
Esinalo 
Fragesteller
 04.06.2023, 22:26
@regex9

Ich danke, es klappt jetzt komplett :) Jetzt mache ich mich daran alles zu 100% zu verstehen :)

0