Forum: Compiler & IDEs Benutzung dieses C-Konstrukts


von Hans (Gast)


Lesenswert?

Hallo,

folgender C-Code ist aus der Source von mavlink. Den kann ich nicht 
anwenden weil ich ihn nicht verstehe:

Die function wird so definiert:
MAVLINK_HELPER const mavlink_message_info_t 
*mavlink_get_message_info(const mavlink_message_t *msg)
{ /*hier kommt C-Code*/ }



So ist MAVLINK_HELPER definiert:
#ifndef MAVLINK_HELPER
#define MAVLINK_HELPER
#endif



So ist mavlink_message_info_t definiert
typedef struct __mavlink_message_info {
  /*irgendwas*/
} mavlink_message_info_t;



So ist mavlink_message_t definiert
MAVPACKED(
typedef struct __mavlink_message {
/* irgendwas */
}) mavlink_message_t;


mit
  #define MAVPACKED( _Declaration_ ) _Declaration_ 
__attribute__((packed))


Wie muss ich das Ding denn jetzt aufrufen?

Folgendes:
mavlink_message_t msg;
mavlink_message_info_t infop;
infop=mavlink_get_message_info( msg);

liefert
"error: incompatible types when assigning to type 
'mavlink_message_info_t' from type 'int'"

Hoffe, C-Kundige können mir da aufs Pferd helfen.

Danke
Hans

von Peter II (Gast)


Lesenswert?

1
mavlink_message_t msg;
2
mavlink_message_info_t* infop;
3
infop=mavlink_get_message_info( &msg);

von Hans (Gast)


Lesenswert?

Oh ja, so gehts, danke.

H.

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.