亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我有一個dll文件叫GetNum.dll,里面有個命令GetNum,怎樣輸出這個命令的結果?

我有一個dll文件叫GetNum.dll,里面有個命令GetNum,怎樣輸出這個命令的結果?

米脂 2023-03-18 14:10:28
#include <WINDOWS.H>  #include <WINBASE.H>typedef void (*MYPROC)(char*); void main(){HINSTANCE LibHandle;MYPROC ProcAdd; char sysbuf[] = "GetNum"; /*過程名*/LibHandle = LoadLibrary("GetNum.dll"); /*載入dll*/ ProcAdd = (MYPROC)GetProcAddress(  LibHandle, sysbuf); /*獲取函數sysbuf的地址*/}
查看完整描述

2 回答

?
陪伴而非守候

TA貢獻1757條經驗 獲得超8個贊

GetNum.dll只是一個鏈接庫,,你只能調用接口函數??磥砟氵€不懂怎么調用動態鏈接庫

查看完整回答
反對 回復 2023-03-21
?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

根據我的猜測,有兩種情況1.如果 void GetNum(char* s);是把輸入的字符儲存在 *s中的話:#include <WINDOWS.H>    #include <WINBASE.H>#include <stdio.h>    typedef void (*MYPROC)(char*); /* 這里要與GetNum的返回值和參數 對應 */void main(){   HINSTANCE LibHandle;   MYPROC ProcAdd;    char ch;       char sysbuf[] = "GetNum";   /*過程名*/   LibHandle = LoadLibrary("GetNum.dll"); /*載入dll*/        ProcAdd = (MYPROC)GetProcAddress(      LibHandle, sysbuf);   /*獲取函數sysbuf的地址*/   ProcAdd(&ch);       printf("%c\n",ch);}

2.如果你的GetNum是int GetNum(char* s){    int i=0,ans=0;    while(s[i]>='0'&&s[i]<='9')    {        ans=s[i]-'0'+ans*10;    }    return ans;} #include <WINDOWS.H>    #include <WINBASE.H>#include <stdio.h>    typedef int  (*MYPROC)(char*);           /*   改 */void main(){   HINSTANCE LibHandle;   MYPROC ProcAdd;    char s[100];                        /*   改 */   char sysbuf[] = "GetNum";   /*過程名*/   LibHandle = LoadLibrary("GetNum.dll"); /*載入dll*/        ProcAdd = (MYPROC)GetProcAddress(      LibHandle, sysbuf);   /*獲取函數sysbuf的地址*/   scanf("%s",s);                    /*   改 */   printf("%d\n", ProcAdd(&s) );        /* 這里調用 并輸出結果 */}


查看完整回答
反對 回復 2023-03-21
  • 2 回答
  • 0 關注
  • 106 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號