函数指针表 c语言
// testio.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; typedef void (*vfunc) (void*); void se_icver_req(void *pparam) { printf("se_icver_req"); } void se_icseq_req(void *pparam) { printf("se_icseq_req"); } void se_setplat_type_req(void *pparam) { printf("se_setplat_type_req"); } void se_import_pubkey_req(void *pparam) { printf("se_import_pubkey_req"); } void se_import_ak_req(void *pparam) { printf("se_import_ak_req"); } void se_import_iv_req(void *pparam) { printf("se_import_iv_req"); } void se_certificate_req(void *pparam) { printf("se_certificate_req"); } void se_session_reqmsg_req(void *pparam) { printf("se_session_reqmsg_req"); } void se_session_cnfmsg_req(void *pparam) { printf("se_session_cnfmsg_req"); } void se_session_endata_req(void *pparam) { printf("se_session_endata_req"); } void se_session_dedata_req(void *pparam) { printf("se_session_dedata_req"); } extern void se_common_rsp(void *pparam); vfunc se_func_ppm_tab[][2] = { {se_icver_req, se_common_rsp}, {se_icseq_req, se_common_rsp}, {se_setplat_type_req, se_common_rsp}, {se_import_pubkey_req, se_common_rsp}, {se_import_ak_req, se_common_rsp}, {se_import_iv_req, se_common_rsp}, {se_certificate_req, se_common_rsp}, {se_session_reqmsg_req, se_common_rsp}, {se_session_cnfmsg_req, se_common_rsp}, {se_session_endata_req, se_common_rsp}, {se_session_dedata_req, se_common_rsp}, }; void se_common_rsp(void *pparam) { } int main() { system("PAUSE"); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2021-09-09 类的抽象能力
2021-09-09 程序员辞职的一万个理由
2020-09-09 vlc libavi
2020-09-09 关键字
2020-09-09 img_yuv422_to_rgb32
2020-09-09 itop4412
2019-09-09 WTSEnumerateSessions 枚举session信息