Forum: PC-Programmierung Hilfestellung C/C++


von tester (Gast)


Angehängte Dateien:

Lesenswert?

Eventuell kann mir hier jemand weiterhelfen. Ich habe eine TestLib 
geschriebenn. In der Applikation nutze ich die TestLib.
Wenn ich den Code ausführte erhalte ich folgende Fehlermeldungen:
1
Fehler (aktiv)  E0144  Ein Wert vom Typ ""uint8_t *"" kann nicht zum Initialisieren einer Entität vom Typ ""uint32_t"" verwendet werden.
2
Fehler  C2440  "Initialisierung": "uint8_t [300]" kann nicht in "uint32_t" konvertiert werden  TestLib

von Grummel (Gast)


Lesenswert?

tester schrieb:
> Eventuell kann mir hier jemand weiterhelfen. Ich habe eine TestLib
> geschriebenn. In der Applikation nutze ich die TestLib.
> Wenn ich den Code ausführte erhalte ich folgende Fehlermeldungen:
> 1Fehler (aktiv)  E0144  Ein Wert vom Typ ""uint8_t *"" kann nicht zum
> Initialisieren einer Entität vom Typ ""uint32_t"" verwendet werden.
> 2Fehler  C2440  "Initialisierung": "uint8_t [300]" kann nicht in
> "uint32_t" konvertiert werden  TestLib

Hallo mein Freund,

Kannst Du bitte dein Programm kommentieren? Was sollen die einzelnen 
Zeilen bewirken?

von Thomas W. (goaty)


Lesenswert?

TestLib::st_telegramData testtelegramm{ 0x00, 0, 0, 
TestLib::telegramFormat_1, 0, telegrammPayload };

Sieht komisch aus.

von A. S. (Gast)


Lesenswert?

Deine Fehlermeldung passt nicht zum Programm. Beispiel: Programm: [100], 
Fehlermeldung [300].

Zudem erwartet CheckTelegramm einen struct (st_telegramData), Du 
übergibst ein Array.

bitte Originalen Code posten und bei der Fehlermeldung, in welcher Zeile 
er auftritt. Aber so ist es erstmal m.E. falsch.

von tester (Gast)


Lesenswert?

Oh sorry. Hab den Es geht mir eigentlich darum warum kann ich den Puffer 
nicht der Struktur übergeben.
1
Fehler (aktiv)    E0144    Ein Wert vom Typ ""uint8_t *"" kann nicht zum Initialisieren einer Entität vom Typ ""uint32_t"" verwendet werden.
1
Fehler    C2440    "Initialisierung": "uint8_t [100]" kann nicht in "uint32_t" konvertiert werden    TestLib

von J. S. (jojos)


Lesenswert?

Ein Zeiger auf die Daten ist einfach ein anderer Datentypen.

Beitrag #7120672 wurde von einem Moderator gelöscht.
von tester (Gast)


Lesenswert?

Sorry ich sehe jetzt nicht was ich ändern müsste?

von tester (Gast)


Lesenswert?

Hab den Fehler doch noch gefunden.

von J. S. (jojos)


Lesenswert?

1
    uint8_t telegram_data[] = {1, 2, 3};
2
    uint16_t length = sizeof(telegram_data);
3
    st_telegramData testtelegramm = { length, &telegram_data[0] };
4
    st_telegramData testtelegramm1 = { length, telegram_data };   // gleichwertig wie &x[0]

von Grummel (Gast)


Lesenswert?

tester schrieb:
> Hab den Fehler doch noch gefunden.

Und wo? war er?

von Oliver S. (oliverso)


Lesenswert?

Der saß vor dem Rechner...

Oliver

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.