Datensätze mittels struct bearbeiten



  • Hallo zusammen!
    Eines vorab: ich bin noch nicht so vertraut mit c und bin mir sicher, dass für die meisten hier die Lösung offensichtlich ist. Mir fehlt aber einfach der Ansatz..😩

    Ich möchte ein Programm erstellen um Daten von Fahrzeugen zu verarbeiten. Die Daten jedes Fahrzeuges sollen in einem struct hinterlegt werden (Hersteller, Leistung, Kilometerstand, Wert). Im ersten Schritt des Programms soll ein neues Fahrzeug eingegeben werden.

    Die Datensätze werden zeilenweise in eine txt-Datei geschrieben und gespeichert.

    Wie muss hier begonnen werden? Wie weise ich die Variablen den Werten im struct zu?

    Über Hilfe wäre ich wahnsinnig dankbar.



  • Die Variablen? Was ist damit gemeint?

    Das Forum ist kein Ersatz für ein Lehrbuch. Zeige Code, stelle konkrete Fragen dazu, dann kann dir geholfen werden.



  • @drjones303 sagte in Datensätze mittels struct bearbeiten:

    Wie muss hier begonnen werden?

    Du musst C lernen und du musst Programmieren lernen. Die Aufgabe ist soweit sehr einfach (hört sich auch nach einer typischen Hausaufgabe für Anfänger an). Du weißt wahrscheinlich nur deswegen nicht, wie du anfangen sollst, weil dir komplett die Grundlagen fehlen. Also arbeite ein Buch von vorne bis hinten durch, wahrscheinlich wirst du die Aufgabe schon nach 10% des Buches lösen können.



  • Ich definiere das struct wie folgt:

     ... struct fahrzeug
    	{
    	char hersteller[20];
    	int leistung;
    	int km_stand;
    	int wert;
    	}; ... 
    

    Nun begebe ich mich über ein Menü in die Funktion "Fahrzeug anlegen" (das ist ja nicht das Problem). Welchen Befehl muss ich hier (hinter dem printf...) nutzen, um die Eingabe in dem struct zu hinterlegen, das meinen Datensatz bildet?

     ... 
    void anlegen (void)
    {
     	printf ("Hersteller eingeben: "); ... 
    

    Ich habe nun schon etliche Beiträge dazu gelesen und kann auch das meiste nachvollziehen - bekomme es aber nicht hin, die Vorgehensweise auf mein Problem zu übertragen. Es nervt mich selber total, dass es daran zu Scheitern droht.. Jedenfalls bin ich für jede hilfe dankbar.



  • Das sind wie gesagt Grundlagen... Und man spricht nicht von "Befehlen", das sind Funktionen, die du aufrufst. Was du hier brauchst, ist wahrscheinlich scanf.



  • Du brauchst eine Variable vom Typ struct fahrzeug. Da du eine „Datenbank“ verwalten willst, wäre ein ein Array von struct fahrzeug angebracht. scanf dürfte in C die übliche Funktion zum Einlesen am Terminal sein.

    All das solltest du schon wissen, wenn du so ein Programm in Angriff nimmst. Wie schon gesagt: das Forum ersetzt kein Lehrbuch.



  • wenn du auf strukturelemente zugreifen willst, machst du das mit dem punktoperator bzw. bei zeigern auf strukturen mit dem (wie heißt das ding noch gleich?) strukturdereferenzierungsoperator (?), also z.b. meinfahrzeug.hersteller bzw. meinfahrzeug->hersteller.



  • @wade1234 sagte in Datensätze mittels struct bearbeiten:

    strukturdereferenzierungsoperator

    -> ist der Pfeil- bzw Arrowoperator. ... nicht zu verwechseln mit dem "goes towards" operator --> (eg. i geht gegen 0: while( i --> 0 ) // ...)


Anmelden zum Antworten