Zum Inhalt springen

Daffi

Mitglieder
  • Gesamte Inhalte

    23
  • Benutzer seit

  • Letzter Besuch

  1. naja kann ja sein,dass es bei der Main noch ne Ausnahme gibt. Gut dann probiere ich das nochmal
  2. Ok habe ein neues Projekt als Konsolenanwendung (dll und leer) erstellt. Dort habe ich meine Dateien reingepackt. Bis jetzt hatte ich eine main,welche nur eine Klasse instanziert und eine Methode aufruft. Mehr ist da nicht passiert. Kann ich die Main so stehen lassen oder muss ich da auch noch was ändern?
  3. Hi Leute, der Name sagt eigentlich schon alles. Ist es möglich ein vorhandenes C++ Konsolenprogramm (mit Visual Studio 2010 erstellt) in eine dll zu wandeln oder muss ich diese neu schreiben? Das Ergebniss soll so aussehen,dass man letztenendes nur auf eine funktion zugreift und diese einen vector zurückliefert. Der Rest der Funktionen soll nicht verwendet werden, nur die eine. Ist dies möglich und/oder was muss ich dazu ändern? Danke im vorraus, Daffi
  4. Arg hatte ich nicht gesehen, sorry. ABer das geht nicht, er haut nur datenmüll raus: -1900781014 richtig wäre 1086
  5. weil read nur ein Char Array akzeptiert!
  6. Hi Leute, Ich habe folgendes Problem: Mir liegt ein Binärfile vor welches vom Aufbau her immer gleich ist. Die ersten 4 Byte ergeben zusammen eine Zahl. Ich hoffe ihr könnt mir helfen. Aufbau des Files im Hex Editor: 00 00 04 3E Das Ergebnis wäre also 1086 und soll in eine Datei geschrieben werden bzw als Variable gespeichert werden. Ich hoffe ihr versteht mein Problem und könnt mir eine Lösung anbieten. #include <iostream> #include <fstream> #include <stdio.h> using namespace std; int INT_little_endian_TO_big_endian(int i) { return((i&0xff)<<24)+((i&0xff00)<<8)+((i&0xff0000)>>8)+((i>>24)&0xff); } int main() { ifstream quelle; quelle.open("C:\\Users\\Daffi\\Desktop\\Bearbeiten2", ios::in | ios::binary ); if (!quelle) // Fehler beim Öffnen? cerr << "Eingabe-Datei kann nicht geöffnet werden\n"; char dataID[4]={0}; //Einlesen von 4 Bytes quelle.read(dataID, 4); /* Hier sollte nun irgendwie eine Zahl draus werden, zur Zeit wird nur der Hex Wert angezeigt*/ for (size_t i=0;i<4;i++){ cout<<hex<<(int)dataID[i]; } quelle.close(); getchar(); return 0; } MfG Paul
  7. ich hab einfach nur das array für plz um 1 erhöht so wie er es mir gesagt hat. also plz[6].
  8. jap bin ich und ich versau mit grad mein freien tag mit dem mist!
  9. Du bist nicht zufällig an der HTW Dresden und machst grad deinen Beleg Wirtschaftsinformatik 1?
  10. Danke hat mein Problem teilweise gelöst. Max | Mustermann | 8888888888 | e | 55555555555 | 01108 | | (null) das steht jetzt da. Der Ort wird gar nicht mehr mit angegeben.
  11. jup habs hin bekommen mit den int .... blöder fehler! Allerings hab ich jetzt ein neues Problem. Ich will einen Struct in eine Datei schreiben. Es geht auch alles erstmalsoweit. Problem ist folgendes: Max | MÂustermann | 8888888888 | passwort | 55555555555 | 01108Dresden | Dresden | (null) Er hängt an die PLZ gleich noch den Ort dran und gibt ihr zusäzlich noch einmal aus. Woran kann das liegen? Der struct dazu: struct adresse { char plz[5]; char stadt[30]; }; struct benutzerdaten { char vname[30]; char nname[30]; char telefonnummer[12]; char passwort[30]; char kontonummer[10]; int rechte; struct adresse a; //siehe oben struct benutzerdaten *next; struct benutzerdaten *prev; }; sowie den Schreibpart: void write(void) { FILE *Ziel; struct benutzerdaten *zeiger; int i=0; Ziel = fopen("nutzer.txt", "w+b"); //r? if(Ziel == NULL) { printf("\224ffnen der Datei nutzer.txt fehlgeschlagen!"); getch(); } zeiger=anfang; while (zeiger!= NULL) { fprintf(Ziel, "%s | %s | %s | %s | %s | %s | %s | %s \n",zeiger->vname, zeiger->nname, zeiger->kontonummer, zeiger->passwort, zeiger->telefonnummer, zeiger->a.plz, zeiger->a.stadt, zeiger->rechte); zeiger=zeiger->next; } fclose(Ziel); }
  12. Hey, wie der name schon sagt ich hab ne menge Fehler dieser Art. /********************************************/ /* Datensatz anhängen */ /********************************************/ void anhaengen(char *vname,char *nname,char *kontonummer,char *telefonnummer,char *email,int plz,char *stadt,char *passwort,int rechte) { struct benutzerdaten *zeiger, *zeiger1; if(ende == NULL) { // Speicherplatzreservierung auf element ende if((ende=(struct benutzerdaten *)malloc(sizeof(struct benutzerdaten))) == NULL) { printf("Konnte keinen Speicherplatz für ende reservieren\n"); return; } } // für erstes Element der Liste if(anfang == NULL) { if((anfang = (struct benutzerdaten *)malloc(sizeof(struct benutzerdaten))) == NULL) { printf("Kein Speicherplatz vorhanden für anfang\n"); return; } // Übergeben der Werte auf anfang strcpy(anfang->vname, vname); strcpy(anfang->nname, nname); strcpy(anfang->telefonnummer, telefonnummer); strcpy(anfang->email, email); strcpy(anfang->kontonummer,kontonummer); strcpy(anfang->a.stadt, stadt); strcpy(anfang->passwort, passwort); strcpy(anfang->a.plz,plz); strcpy(anfang->rechte, rechte); anfang->next=NULL; ende=anfang; ende->prev=NULL; } else // für alle anderen Elemente { zeiger=anfang; // geht bis zum letzten durch und das nächste Element wird dran gehangen while(zeiger->next != NULL) zeiger=zeiger->next; if((zeiger->next =(struct benutzerdaten *)malloc(sizeof(struct benutzerdaten))) == NULL) { printf("Kein Speicherplatz für das letzte Element\n"); return; } zeiger1=zeiger; zeiger=zeiger->next; strcpy(zeiger->vname, vname); strcpy(zeiger->nname, nname); strcpy(zeiger->telefonnummer, telefonnummer); strcpy(zeiger->email, email); strcpy(zeiger->kontonummer,kontonummer); strcpy(zeiger->a.stadt, stadt); strcpy(zeiger->passwort, &passwort); strcpy(zeiger->a.plz, plz); strcpy(zeiger->rechte, rechte); zeiger->next=NULL; ende=zeiger; zeiger->prev=zeiger1; zeiger1->next=zeiger; } } } Hier der Auszug aus dem Header: void anhaengen(char *vname,char *nname,char *kontonummer,char *telefonnummer,char *email,int plz,char *stadt,char *passwort,int rechte); weitere Fehler: [Linker error] undefined reference to `anhaengen' [Warning] passing arg 1 of `strcpy' from incompatible pointer type Ich find die Fehler einfach nicht. Wäre dankbar über hilfe!
  13. Okay damit wäre Problem 1 gelöst. Zu dem 2.: Das ist teil einer Bankverwaltungssoftware.Problem ist das umlaute komplett ignoriert werden .... Sie werden nicht mitgeschrieben. für Müller dann z.B. Mller
  14. Guten abend, wieder hab ich ein kleines Problem. Es geht um das einlesen von einem Namen (Vor und nachnamen) welcher in eine Datei gespeichert werden soll. Dieses soll später noch erweitert werden z.b mit kontonummer. 1.Problem: Wie scanne ich genau 8Zahlen ein und auf was speichere ich sie? 2.Problem: wenn ich die Namen (z.B Müller) einlese speichert er den Buchstaben nicht. Quelltext: #include <stdio.h> #include <conio.h> struct personen { char *vname; char *nname; }; int main() { struct personen *anfang = NULL; struct personen *position = NULL; FILE *login; int i=0,max=3; char buchstabe; login=fopen("nutzer.txt","a+"); anfang= (struct personen*)calloc (1,sizeof(struct personen)); if (anfang==NULL) { printf("Das \224ffnen der Datei ist fehlgeschlagen!"); return 1; } anfang->next=NULL; // später freigeben!!!! position=anfang; /* VORNAME einscannen*/ printf("Vorname:"); position->vname = (char *)calloc(max, sizeof(char)); while((buchstabe=getchar())!=10) { if (i==(max-1)) { max=max+1; position->vname = (char *)realloc(position->vname,max*sizeof(char)); } position->vname=buchstabe; i++; } position->vname='\0'; max=3; i=0; /* Nachname einscannen*/ printf("Nachname:"); position->nname = (char *)calloc(max, sizeof(char)); while((buchstabe=getchar())!=10) { if (i==(max-1)) { max=max+1; position->nname = (char *)realloc(position->nname,max*sizeof(char)); } position->nname=buchstabe; i++; } position->nname='\0'; fputs(position->nname,login); fputs(position->vname,login); printf("Ihre Eingabe\n"); puts(position->vname); puts(position->nname); fclose(login); getch(); } Wie kann ich dies umsetzen? thx daffi
  15. Leider nicht.Es war nur Inhalt einer Übung. Wie gesagt es soll ein Wort mit einem Codewort ersetzt werden welches frei wählbar ist. Das Prinzip verstehe ich lediglich nicht.

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...