NDK 函式呼叫異常獲取錯誤資訊

2021-09-21 00:19:39 字數 550 閱讀 4506

場景說明:

android平台ndk呼叫iconv_open函式,實現utf-8轉gbk編碼,沒有達到預期的效果。嘗試獲取iconv_open函式失敗的錯誤碼。因為ndk的執行環境是linux系統,所以嘗試使用linux獲取錯誤碼的機制,檢視錯誤資訊。

解決方案:

1)包含的標頭檔案:

#include

#include

#include

#include

2)呼叫的情況:

errno = 0;//避免其他的錯誤影響到本次函式執行結果的判斷

iconv_t cd = iconv_open("gbk", "utf-8");

char* message = null;

if (errno != 0)

基本原理:errno作為乙個系統全域性的變數,定義在errno.**件中,會在函式呼叫出錯的情況下設定,通過strerror函式返回錯誤的具體資訊,當前測試的結果,錯誤碼是22,錯誤資訊:invalid argument,如果errno等於0,訊息是:success

參考**:

資料獲取 獲取系統錯誤資訊函式

if isnull aerr info then return error物件為空 null if not isvalid aerr info then return error物件沒有例項化 non isvalid if aerr info.number 0 then return ls errt...

T SQL 中獲取錯誤資訊

1 在 try.catch 構造的 catch 塊的作用域內,使用以下系統函式 error procedure 返回出現錯誤的儲存過程或觸發器的名稱。如果在儲存過程或觸發器中未出現錯誤,該函式返回 null。error severity 返回嚴重性。error state 返回狀態。下面所使用 系統...

MySQL錯誤資訊

mysql的出錯 表,根據mysql的標頭檔案mysql include mysqld error.h整理而成。錯誤之處,請大家指正。1005 建立表失敗 1006 建立資料庫失敗 1007 資料庫已存在,建立資料庫失敗 1008 資料庫不存在,刪除資料庫失敗 1009 不能刪除資料庫檔案導致刪除資...