Listen verketten und vergleichen mit Daten aus File!

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
zoror
Beiträge: 3
Registriert: Fr Jan 16, 2009 9:42 pm

Listen verketten und vergleichen mit Daten aus File!

Beitrag von zoror » Fr Jan 16, 2009 9:49 pm

He ich habe das Problem, dass ich mir die Liste erstellt habe aber nicht mehr weiter komm! Muss eine nutzer.txt benutzen wo der Loginname, Passwort und Kontonummer drin sind! Die werden in eine liste gespeichert und müssen dann verglichen werden! Danach muss er einloggen!

Code: Alles auswählen

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

struct person
{
  char *login;
  char *passwort;
  char *kontonummer;
  struct person *nextzeiger;
};

char eingabe (char *name, char **string)
{
  int n;

  n = strlen(name);
  *string = (char *)malloc ((n+1)*sizeof (char));
  strcpy (*string, name);
}

int main() 
{
  struct person *nextzeiger=NULL;
  struct person *anfangzeiger=NULL;
  char name[100];

  anfangzeiger = malloc (sizeof (struct person));
	
  printf("Bitte geben sie ihren Loginnamen ein:");
  scanf("%s", name);
  eingabe (name,&anfangzeiger->login);

  printf("Bitte geben sie ihr Passwort ein:");
  scanf("%s", name);
  eingabe (name,&anfangzeiger->passwort);

  printf("Bitte geben sie ihre Kontonummer ein:");
  scanf("%s", name);
  eingabe (name,&anfangzeiger->kontonummer);

  printf( "\n\nDein Loginname ist : %s \n\passwort: %s\n\Kontonummer: %s\n\",
          anfangzeiger->login,
          anfangzeiger->passwort,
          anfangzeiger->kontonummer );    //Zum testen

  getch();				
  free(anfangzeiger->login);
  free(anfangzeiger);
}
/* edit by Kerli: Code formatiert und Codetags eingefügt. */

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3125
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Listen verketten und vergleichen mit Daten aus File!

Beitrag von cloidnerux » Fr Jan 16, 2009 10:21 pm

Hallo und wilkommen im Forum.
Also, du willst also eine Funktion implementieren, die Überprüft ob das eingegebne Pass wort und benutzenamen &co. einem Eintrag in der Nutzer.txt entsprechen?
Dazu musst du einfach in einer Schleife ALLE elemente durchgehen, Prüfen ob die Eingegebenen Daten einem eintrag entsprechen, wenn sie dies Tun, dann eine VAriable auf True sezten und die Schleife mit break abbrechen.

Code: Alles auswählen

int eintrag_vorhanden=0;
struct person *personenpointer=ERSTES_ELEMENT_DER_LISTE;
while(!eintrag_vorhanden)      //Bestimmte Abbruchbedinung
{
   if(*personenpointer->login==Login...)eintrag_vorhanden=1;
   else personenpointer=personenpointer->nextzeiger;
}
Ist Warscheinlich nihct das BAeste, aber eine Möglichkeit.
Redundanz macht wiederholen unnötig.
quod erat expectandum

zoror
Beiträge: 3
Registriert: Fr Jan 16, 2009 9:42 pm

Re: Listen verketten und vergleichen mit Daten aus File!

Beitrag von zoror » Fr Jan 16, 2009 10:37 pm

Ich werde es morgen mal so testen! Muss eine Kontoführungssoftware in C schreiben.

Benutzeravatar
Kerli
Beiträge: 1456
Registriert: So Jul 06, 2008 10:17 am
Wohnort: Österreich
Kontaktdaten:

Re: Listen verketten und vergleichen mit Daten aus File!

Beitrag von Kerli » Sa Jan 17, 2009 12:04 am

Hallo zoror, willkommen im Forum!

So wie ich dich verstehe liegt das größte Problem wohl darin die Einträge aus der Textdatei in eine Liste zu bekommen.

Also du must die Datei einfach mit fopen öffnen. Falls du das noch nicht kennst findest du zum Beipiel in unserem Wiki einen Beitrag dazu.

Danach kannst du zum Beispiel mit fgets die Datei Zeilenweise einlesen. Eine Dokumentation dazu findest du zum Beispiel hier. Jetzt musst du dann nur mehr jede Zeile auswerten. Wie du das genau machen musst kann ich nicht sagen, da ich nicht weiß wie deine Datei aufgebaut ist. Aber du wirst wahrscheinlich nach bestimmten Trennzeichen suchen müssen und an diesen Stellen dann auftrennen und in die entsprechenden Variablen deiner Datenstrukturen kopieren. Dafür findest du auch in der string.h einige nützliche Funktionen.

Achja, und versuch doch conio.h zu vermeiden. Die gibt es nämlich nur unter Windows...

@cloidnerux:
Bitte versuch doch deine Rechtschreib- und Tippfehler wieder etwas einzuschränken. So etwas muss doch wirklich nicht sein:
cloidnerux hat geschrieben:Ist Warscheinlich nihct das BAeste,[...]
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)

OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at

zoror
Beiträge: 3
Registriert: Fr Jan 16, 2009 9:42 pm

Re: Listen verketten und vergleichen mit Daten aus File!

Beitrag von zoror » Sa Jan 17, 2009 4:04 pm

Ja, danke! Bin schon etwas weiter gekommen!

Antworten