Function Pointer - Verständnissproblem
Angenommen, ich weise einem function pointer eine Funktion zu und führe sie aus, also quasi so
Code:
void (*new_function)(void) = meinefunc;
(*new_function)();
Wieso gibt er mir dann folgende Warnung aus?
./taskcaller/taskcaller.c:73: warning: initialization from incompatible pointer type
Vielen Dank für eure Hilfe!
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo zusammen, ich hänge nun mal meinen gesammten Code an, auch wenn er noch nicht fertig ist.
Das ganze ist ein Taskcaller, der immer verschiedene Funktionen aufrufen soll.
Edit: Nochwas: Ich verwende nicht WinAvr sondern avr-gcc(4.2.1) für Linux.
Ich hätte noch eine paar Fragen:
1. Wie sage ich dem Gcc dass er alle Variablen "zentral" speichern soll. Wenn der Caller nun das mit icall aufruft, werden in den Funktionen local die Variablen gesichert. Ich möchte das ganze aber zentral, dass er alle Register vor dem icall sichert, die er noch braucht.
2. Wie sage ich dem Gcc, dass er nichtverwendete Funktionen nicht ins Flash mitnehmen soll..?