这就是C 语言中的指针函数写法。
#include <stdio.h> #define uint8 unsigned char #define uint16 unsigned short #define uint32 unsigned int uint8 get_device_type_flash() { printf("--------------- run ------------------ \n"); return 100; } uint8 get_flash_1byte(void * funtype){ uint8 (* fun)() = funtype; uint8 num = fun(); return num; } uint8 get_device_type() { return get_flash_1byte(get_device_type_flash); } int main(int argc, char const *argv[]) { uint8 num = get_device_type(); printf("res: %d \n", num); return 0; }