passage d'un pointeur de fonction en argument d'une callback
Bonjour,
J'ai un souci de syntaxe en C sous Linux :
une création de dialog box qui passe en paramètre une fonction:
Code:
1 2 3 4
|
Boolean fct();
...
TrafficDialog = (Widget)XmCreateQuestionDialog(widget, "ApplyTrafficMsg", fct, 0); |
Dans la callback, mon souci est de récupérer l'argument client data avec le bon type:
Code:
1 2 3 4 5
| void ApplyTrafficMsg(Widget widget, XtPointer client_data, XtPointer call_data)
{
Boolean (*pf_Apply_Traffic) ();
pf_Apply_Traffic = (Boolean) client_data;
} |
Ce code me génére les warnings suivants:
Traffic/ANA_TOOL_Traffic_Dialog.c:85: warning: cast from pointer to integer of different size
Traffic/ANA_TOOL_Traffic_Dialog.c:85: warning: assignment makes pointer from integer without a cast
Quelqu'un a t'il une suggestion ?
Merci