Mam naprawdę ciężki czas na zrozumienie składni wskaźników funkcji. Próbuję to zrobić, mam tablicę wskaźników funkcji, która nie przyjmuje żadnych argumentów i zwraca wskaźnik pustego. Czy ktoś może w tym pomóc?Tablica wskaźników funkcji w C
Odpowiedz
Po pierwsze, należy dowiedzieć się o
cdecl
:cdecl> declare a as array 10 of pointer to function(void) returning pointer to void void *(*a[10])(void)
Można to zrobić ręcznie - wystarczy zbudować go od wewnątrz:
a
jest array:
a[10]
wskaźników:
*a[10]
do funkcji:
(*a[10])
biorące żadne argumenty:
(*a[10])(void)
re obracając
void *
:void *(*a[10])(void)
Jest znacznie lepiej, jeśli używasz
typedef
aby ułatwić Ci życie:typedef void *(*func)(void);
A następnie dokonać tablicy:
func a[10];
Uwaga: link na początku jest bardzo pomocny! – Ziezi
Używaj typedef
s
typedef void* func(void);
func *arr[37];
Ilekroć złożona składnia staje się zbyt skomplikowana, typedef zwykle czyści rzeczy.
E.g.
typedef void *(* funcPtr)(void);
funcPtr array[100];
Które bez typedef Chyba będzie wyglądać następująco:
void *(* array[100])(void);
Odjazd http://www.newty.de/fpt/fpt.html#arrays dla przykładów i Wyjaśnienia tablic C i C++ wskaźników funkcji.
start z nazwą tablicy i pracować na swój sposób, pamiętając, że []
i ()
wiążą przed *
(*a[]
jest tablicą wskaźnika, (*a)[]
jest wskaźnikiem do tablicy, *f()
jest funkcją powrocie wskaźnik, (*f)()
jest wskaźnik do funkcji):
- 1. C++ - tablica wskaźników do wektora?
- 2. C++ Tablica wskaźników: usunąć lub usunąć []?
- 3. TeamCity Tablica wskaźników jakości
- 4. Tablica wskaźników w stylu C obiektów Objective-C pod ARC
- 5. C składnia funkcji powracających wskaźników funkcji
- 6. Odtwarzaj tablicę wskaźników funkcji C w Pythonie
- 7. C/C zmienna ++ tablica w nagłówku funkcji
- 8. Tablica wskaźników do macierzy Eigen
- 9. substytut wskaźników funkcji w python
- 10. C++: Używanie wskaźników funkcji z funkcjami składowymi
- 11. Przechowywanie funkcji SYSCALL w tablicy wskaźników funkcji
- 12. zrobić wskaźników funkcji potrzebują ampersanda
- 13. Definiowanie wskaźników funkcji
- 14. urządzenie wskaźników funkcji
- 15. Tablica współdzielonych wskaźników do różnych klas
- 16. przekazywanie wskaźników do extern funkcji C w DLL z VB
- 17. Jak mogę używać wskaźników funkcji w Nimrod?
- 18. Pisanie funkcji ogólnej w celu wykrycia, czy tablica wskaźników zawiera NULL
- 19. W jaki sposób delegaci w języku C# są lepsze od wskaźników funkcji w C/C++?
- 20. Używanie mapy wskaźników funkcji STL
- 21. C++ wywołanie funkcji z wektorem wskaźników funkcji wewnątrz klasy, gdzie definicja funkcji jest w głównej
- 22. Jak zadeklarować tablicę wskaźników funkcji?
- 23. Usuwanie C# Niebezpiecznych wskaźników
- 24. Objective-C użycie wskaźników
- 25. C++: kiedy używać wskaźników?
- 26. C++ zrozumienie użycia wskaźników funkcji przy pomocy cocos2d-x
- 27. Tablica listy w C#
- 28. Tablica struktur w C
- 29. Tablica funkcji TypeScript
- 30. Wpisana tablica funkcji
Generalnie otrzymasz lepszą odpowiedź, jeśli opublikujesz kod, który próbowałeś, nawet jeśli nie działa, i wyjaśnij, jak najlepiej możesz dokładnie określić, na czym polega problem. To pokazuje więcej wysiłku z twojej strony. –
sprawdź to [link] (http://c-faq.com/decl/spiral.anderson.html) – Vikram