我們遷移從RHEL 5.3 32位應用程序,以6.4(char)NULL,' 0'和0在C的memset中意味着相同的東西?
我們正在「一個指針轉換爲大小不同的整數」關於新系統的memset
的警告。
難道(char)NULL
,'\0'
和0
都意味着在C的memset中同樣的事情?
以下代碼在新環境中發出警告。
#define NULLC (char)NULL
#define MAX_LEN 11
…
memset(process_name, NULLC, MAX_LEN + 1);
strncpy(process_name, "oreo", MAX_LEN);
發佈引起問題的代碼行。卡爾森提供了一個正確的答案,但它可能無法幫助你,因爲你沒有發佈相關的代碼。 – Gilles
以下代碼在新環境中發出警告。 的#define NULLC(炭)NULL 的#define MAX_LEN 11 memset的(PROCESS_NAME,NULLC,MAX_LEN + 1); strncpy(process_name,「oreo」,MAX_LEN); – 2013-07-15 22:04:34
將'NULLC'定義爲'(char)NULL'的任何理由? – Karlson