1樓:網友
因為你這個定義型別的關係~string其實是乙個指標,記錄的是乙個字串(陣列空間)的首位址。在呼叫api時,對於字串型別的你必須以byval型別傳遞,就相當於傳遞位址。api函式獲得字串的位址就可以改變其指向的內容了。
宣告api函式時,如何宣告 unsigned char * 型別
2樓:網友
! 函式原型:int winapi mxdetectfinger(unsigned char *fingerbuf) 函式功能:
探測手指是否按在採集儀上。 函式引數:fingerbuf-讀取的指紋資料,通過此指紋資料判斷是否有手指。
返回值: 成功返回1,失敗返回0。謝謝!
function mxdetectfinger(ref char fingerbuf) library ""sorry,我當成乙個字元了,應該是function mxdetectfinger(ref string fingerbuf) library ""哎,老了,又忘了些返回值了:)我先試試,謝謝拉!呵呵,被人搶先了c中char* 相當字元符串 string同意:
fibbery(飛)( 我這麼寫了後還是會出現問題,執行後pb出現錯誤自動關閉,鬱悶,我再試試!哦,你需要在呼叫時初始化實引數,例如:ls_fingerbuf=space(100)space的引數要根據dll中函式需要的最大需要確定。
支援: fibbery(飛)非常感謝,已測試通過,現結帖,都有分的怎麼在管理裡面已經給分了,這裡怎麼還顯示沒給分呀??
api函式中的宣告時引數是隨便寫的?
3樓:網友
不能隨便寫,都是嚴格要求的。
4樓:小西
不能隨便寫,是按照相應內容來寫,要求很嚴格,不能亂寫!
api函式setcursorpos的問題
5樓:網友
在win32中long是4個位元組,而在。net中,為了相容x64把long設定為8個位元組。
所以msil解析器傳遞了16個位元組。
其實0x0001(x),0x0001(y)和0x00010001(??在彙編中是等效的,(函式傳遞時)
前面的就成了原來輸入的x原來的y
後面的就洩露了。(記憶體洩露很危險的!!!返回時int強制轉換成long時可能訪問記憶體禁止訪問區域。(和野指標的危害差不多)
所以vb宣告函式**在要改下面幾點:
long要改成int
int要改成short
還有vs2008好像託管助手還沒出。
所以推薦用vs2019社群版來除錯。
ps:int是integer的縮寫(int32也是)ps2:未來有x128是不是long要變成16個位元組了???
6樓:匿名使用者
我用vb試了 沒出現你這種情況啊。
c語言自定義函式宣告的問題
你好。請不要使用case作為函式名。case是c保留的關鍵字 include int cas float rate int main void int cas float salary 我想你大概是想要這樣的吧,case是保留關鍵字,不能做自定義函式名 直接上正確的程式,改過的地方已標註。inclu...
API有斷點續傳的功能嗎,API有什麼作用,他的工作原理是什麼?
現在沒有,不過在上傳節點和線路上做了很多優化工作,上傳速度比普通的網路會快很多。api有什麼作用,他的工作原理是什麼?初學程式設計,遇到的api介面是什麼意思?接入簡訊api 就可以實現發簡訊的功能,如果需要簡訊功能,你只需要第三方簡訊服務商對接簡訊介面即可。至於如何對接有使用說明文件的。就像您只需...
c語言中宣告子函式和沒有宣告子函式有什麼區別
子函式在宣告後可以先呼叫,後定義 避免編譯器猜資料。操作方法如下 1 函式的宣告,函式有兩種型別,一種是有返回值的,前面用int float double char 來定義,如int f int n 前面的int就是返回值型別。2 如果函式不需要返回值,那麼就用void來寫在前面,如void f i...