[英]In PowerBuilder, how to set byte[] to null?
我從.dll 調用數據,我需要 NULL 來跳過某些情況。
int Fn(ref byte xpara[])
setnull(xpara)
上面的代碼給了我一個錯誤,setnull() 不適用於 byte[]
由於來自.dll 的數據中可能包含 0,因此我使用 byte[] 來避免以 0 停止。在某些情況下,我仍然需要將 byte[] 設置為 null。
無論數據類型如何,都不能在結構或數組上使用 SetNull。
要重置數組,請定義另一個您從不添加任何條目的變量並將其分配給需要重置的變量。
字符串 ls_files[], ls_empty[]
ls_files = ls_empty
您不能在 PowerBuilder* 中將數組類型設置為 Null。 您可以做的最好的事情是將數組參數重新初始化為尚未分配的本地byte[]
變量。
function integer Fn(ref byte xpara[]);
byte l_null[]
// zero-out the referenced byte array
xpara = l_null
return 1
end function
然后您可以檢查調用者的引用參數的長度(即: UpperBound(byteArray)
。
* 您可以將其設置為 null,但如果調用者嘗試執行任何操作(例如: byteArray[1] = 1
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.