» Willkommen auf Offtopic «

Muelltonne
aus Cottbus
offline



OC Profi
25 Jahre dabei !

Intel Core 2 Duo
1866 MHz @ 2800 MHz
55°C mit 1.38 Volt


Hallöchen,
Ich brauch ein C++ Programm, dass von Datenfolgen eine Prüfsumme erstellt, egal was oder wie lang diese Datenfolgen sind, ich brauch nur mal nen Ansatz.
:ocinside:


               Global Denken
6 Jahre!!!   Banal Reden
               Fatal Handeln

Beiträge gesamt: 717 | Durchschnitt: 0 Postings pro Tag
Registrierung: Mai 2001 | Dabei seit: 9305 Tagen | Erstellt: 17:37 am 15. Mai 2006
Robinator
aus Hamburg
offline



OC God
25 Jahre dabei !

Intel Core i7


Ähm an was für eine Prüfsumme hast du denn gedacht ?
SHA , MD5 oder einfach nur CRC32 ?

Ok hab grad gesehn das dir egal ist welcher.
Nun viele Prüfsummem sind komplex.
Die einfachste Prüfsumme ist einfach die Bits addieren.
Also für eine 32 Bit Prüfsumme einfach 32 Bit mit 32 Bit addieren und das Ergebnis bei 32 Bit abschneiden.
Feritg ;)

(Geändert von Robinator um 19:33 am Mai 15, 2006)

Beiträge gesamt: 3764 | Durchschnitt: 0 Postings pro Tag
Registrierung: Juni 2001 | Dabei seit: 9271 Tagen | Erstellt: 19:11 am 15. Mai 2006
Muelltonne
aus Cottbus
offline



OC Profi
25 Jahre dabei !

Intel Core 2 Duo
1866 MHz @ 2800 MHz
55°C mit 1.38 Volt


von den Funktionen ist mir das klar, aber das in C umzusetzen, das ist mein Problem, ich habe nur immer in Pascal Programmiert, das ist inzwischen überholt.


               Global Denken
6 Jahre!!!   Banal Reden
               Fatal Handeln

Beiträge gesamt: 717 | Durchschnitt: 0 Postings pro Tag
Registrierung: Mai 2001 | Dabei seit: 9305 Tagen | Erstellt: 21:22 am 15. Mai 2006
Robinator
aus Hamburg
offline



OC God
25 Jahre dabei !

Intel Core i7


Wie wär es mit einem CPP Buch ?
Ich hab mir ma was zusammen geschrieben.

Code

#include <stdio.h> // libs für fopen und printf

int main() {
 FILE * filepointer;
 // zum öffnen einer Datei brauchen wir einen Zeiger
 unsigned char c = 0;
 // einfach ein char reservieren (8 bit)

 unsigned int pruefsumme = 0;
 // 16 Bit int // gleich auf 0 setzen
 
 filepointer = fopen("test.dat", "r");
 // Datei zum lesen öffnen
 
 if (filepointer != NULL) {
 // schaun ob das öffnen ok war

   while ((c = getc(filepointer)) != EOF) {
   // so lange 1 Zeichen aus der Datei lesen bis EOF (End of File)

     pruefsumme += c;
     // einfach das Zeichen dazu addieren;) ein Zeichen ist auch nur eine
Zahl

     if (pruefsumme >= 256) { pruefsumme -= 256; }
     // wenn die Prüfsumme über 255 dann wieder zurück;) soll ja 8 Bit bleiben
   }
   fclose(filepointer);
   // Datei noch zu machn
 } else {
   printf ("konnte Datei nicht öffnen! \n");
   // wenn nich dann Fehler melden
 }

 printf ("Prüfsumme : %d\n" , pruefsumme);
 // noch die prüfsumme ausgeben für die Datei

 return 0;
}

das wars auch schon ..
Das Prog öffnet eine Datei und berechnet eine 8 bit Prüfziffer.
Wollen ja einfach anfangen ;)

(Geändert von Robinator um 20:37 am Mai 16, 2006)

Beiträge gesamt: 3764 | Durchschnitt: 0 Postings pro Tag
Registrierung: Juni 2001 | Dabei seit: 9271 Tagen | Erstellt: 20:36 am 16. Mai 2006
Muelltonne
aus Cottbus
offline



OC Profi
25 Jahre dabei !

Intel Core 2 Duo
1866 MHz @ 2800 MHz
55°C mit 1.38 Volt


Ich danke dir vielmals!!!! :punk:
Ich hatte mich heute auch mit Dateilesen beschäftigt.
Aber brauchen wir wirklich Zeiger? Ich find die ganz schön kompliziert.


               Global Denken
6 Jahre!!!   Banal Reden
               Fatal Handeln

Beiträge gesamt: 717 | Durchschnitt: 0 Postings pro Tag
Registrierung: Mai 2001 | Dabei seit: 9305 Tagen | Erstellt: 1:33 am 17. Mai 2006
CREON
aus Dormagen
offline



OC God
25 Jahre dabei !

AMD Ryzen 7
3500 MHz @ 3500 MHz
70°C mit 1.1 Volt


denk ja nicht dran, dass du zeiger getrost ignorieren könntest...
zeiger sind wichtig!


Die Zensur ist das lebendige Eingeständnis des Herrschenden, dass er verdummte Sklaven treten, aber keine freien Völker regieren kann.

Beiträge gesamt: 4050 | Durchschnitt: 0 Postings pro Tag
Registrierung: Mai 2001 | Dabei seit: 9298 Tagen | Erstellt: 21:31 am 17. Mai 2006
Robinator
aus Hamburg
offline



OC God
25 Jahre dabei !

Intel Core i7


und Fehlerquelle NR. 1 ...
bei größeren Datenmengen oder mehreren Klassen muss man Zeiger benutzen
und die meisten Standard-Bibliotheken arbeiten nur mit Zeigern
ich rate dir echt ein Buch anzuschaffen

Beiträge gesamt: 3764 | Durchschnitt: 0 Postings pro Tag
Registrierung: Juni 2001 | Dabei seit: 9271 Tagen | Erstellt: 14:36 am 18. Mai 2006
jmoney
aus St. Ingbert
offline


OC Profi
22 Jahre dabei !


Pascal ist überholt? Seh ich anders. Wenn ich ein kleines Programm schreiben will, dessen Code ich auch in einem Jahr noch selbst lesen kann, nehm ich Delphi her. Wenn man nicht grade außschließlich mit der Windows-API arbeitet, ist PASCAL sogar halbwegs portierbar..

Beiträge gesamt: 866 | Durchschnitt: 0 Postings pro Tag
Registrierung: Dez. 2003 | Dabei seit: 8356 Tagen | Erstellt: 15:22 am 18. Mai 2006
Muelltonne
aus Cottbus
offline



OC Profi
25 Jahre dabei !

Intel Core 2 Duo
1866 MHz @ 2800 MHz
55°C mit 1.38 Volt


Ich hab genug C++ Bücher aus der Bibo, und komme langsam auch hinter das ein oder andere. Und werd mich mal durch Zeiger durcharbeiten.


               Global Denken
6 Jahre!!!   Banal Reden
               Fatal Handeln

Beiträge gesamt: 717 | Durchschnitt: 0 Postings pro Tag
Registrierung: Mai 2001 | Dabei seit: 9305 Tagen | Erstellt: 20:41 am 18. Mai 2006