Zeiger in Integer umwandeln

OP #1094506
Lesenswert?

Hallo,
wenn ich einen Zeiger in ein Integer umwandeln, bekomme ich eine 
Fehlermeldung.
"Warning [2054] suspicious pointer conversion"

in der *.c
#pragma romdata eedata_scn=0xf00000
rom unsigned char eedata_TransferFehler[MaxTransferFehler];
#pragma romdata

//int x = 42;
int adr;
//
//  ---->>>>  Zeiger in Integer umwandeln
//int* ptr = (unsigned int*)(void*)&eedata_TransferFehler[0];
oder
int* ptr = &eedata_TransferFehler[0];
//int* ptr = &x;
adr = (int)ptr;

bei "int x = 42" in der *.c oder *.h kommt keine Warnmeldung.

Die berechnung ist in Ordnung.

Gruß Siegfried
OP #1094535
Lesenswert?

Hallo,
Danke für die schnelle Info, funktioniert einwandfrei.
das ganze kommt davon, das ich folgende Zeilen

#pragma romdata eedata_scn=0xf00000
rom unsigned char eedata_TransferFehler[MaxTransferFehler];
#pragma romdata

bei einem PIC18F242 nicht in der *.h anlegen konnte, wobei bei einem 
PIC18F4680 funktioniert.
Man hat mir geschrieben, das das in der *.c sei soll.
Gruß Siegfried

guten Rutsch ins Jahr 2009

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren