Naja, alle Elemente eines Arrays sind gleich groß, da kannst du nicht viel machen. Bei dem Zugangscode kannst du ein Byte in low und high teilen (d.h. ein Byte enthält dann 2 Zeichen des Zugangscodes), dann brauchst du "nur" 4 Bytes um den ganzen Code abzuspeichern.
Beim Datum kannst du nicht viel sparen, außer, wenn du die low-Bytes des Jahres weglässt (also statt 2004 nur 04 abspeichern). Um diese 4 Bytes kommt man nicht umhin.
Für die Zeit brauchst du 2 Bytes (Minute, Stunde).
Das wären insgesammt 10 Bytes, bei 50 Einträgen ergiben sich 500 Bytes. In einem PIC18F452 hast du 1536 Bytes frei. Also nimmst du damit "nur" 1/3 des vorhandenen Speichers in Anspruch.
naja, als Pointer würde ich die "Anfangs-" und "Endszeichen" nicht bezeichnen. Weil in C ein Pointer die Andresse einer Memoryblockes beinhaltet. Eher als Laufvariable.
Naja, wie du in C eine Structur in ein Array haust:
Code:
#define MAXCOUNT 50
struct DATA
{
char ID76;
char ID54;
char ID32;
char ID10;
char day;
char month;
char year;
char hour;
char minute;
}data;
data Daten[MAXCOUNT];
MfG
Mobius
Lesezeichen