strerror

    5熱度

    1回答

    我正在修復一些使用strerror(非線程安全)的多線程的Linux代碼。我發現strerror_r和strerror_l都是線程安全的。由於strerror_r的不同定義(取決於_GNU_SOURCE它有不同的定義)我想使用新的strerror_l函數,但是我應該如何獲取當前語言環境的locale_t對象?我沒有使用iconv或任何東西,只是簡單的libc,我不明白我如何獲得「默認區域設置」對象

    -2熱度

    1回答

    我想在excel中打開一列,並將它的單元格中的所有值移動到列表中。 def open_excel(col, excel_file): open_file = openpyxl.load_workbook(excel_file) sheet_object = open_file.get_sheet_names()[0] cell_vals = [] col_n

    0熱度

    2回答

    我正在嘗試編寫一個函數,如this,它將打印出與錯誤編號相關的錯誤詳細信息,但出現錯誤error: expected initializer before 'strerror'。這裏是代碼 #include <iostream> #include <cstring> static char* messages[] = { "No error", "EPERM (Opera

    2熱度

    1回答

    VxWorks提供了一個只包含兩個參數的strerror_r版本。 STATUS strerror_r ( int errcode, /* error number */ char *buffer /* string buffer */ ) cURL提到MAXERRSTR_SIZE。 vxworks樣式的strerror_r()確實使用我們傳遞給函數的緩衝區。緩衝區大小應

    6熱度

    5回答

    我可以使用perror()或strerror()打印屬於一個errno的「人類可讀的」錯誤消息,但如果我也要打印的errno的符號名稱(例如,「EAGAIN」)? 任何方便的功能或宏來做到這一點? 更新:附加我最後寫的代碼,基於下面的接受的答案,其意見的想法: #include <ctype.h> #include <errno.h> #include <stdio.h> int get_

    1熱度

    1回答

    我發現在他的網站的Zed Shaw的調試宏時His C的書「學習C辛苦」移植的Zed Shaw的調試宏是免費閱讀。它最初是爲Linux設計的,它工作得很好,已經使用了一段時間。現在 ,我已經開始寫一個Windows的C代碼,我使用Visual Studio。我想在我正在處理的項目中使用這些調試宏。 的問題如下: 比方說,我想用支票宏,以確保功能沒有錯誤返回。 display = al_create

    -1熱度

    2回答

    請解釋以下程序中發生了什麼。 我檢查了開頭和程序結束由strerror(errno)返回的地址,並確認其返回相同的地址中的每個time.Then一旦確定了這一點,在第一種情況下我開始分配相同的地址ptr然後用一個字符串"Hello"複製使用strcpy()。在情況II它,我試圖直接複製"Hello"由strerror(errno)。我返回的地址已經奇數findings.I'll感激,如果你解釋下: