看板 C_and_CPP 關於我們 聯絡資訊
WCHAR *wszStr = new WCHAR[4]; wmemcpy(wszStr, L"abcde", 3); wszStr[4] = L'\0'; //用wcout印出來確實是abc wcout << wszStr << endl; //但是字串比對回傳值是1,表示兩個字串不相等 int nResult = wcscmp(wszStr, L"abc"); //且刪除時會出錯 delete [] wszStr; 為什麼呢? 該如何正確的把字串的前3個字元,複製到另一個字串上呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.148.121
purpose:4 means 0~3 05/11 23:44
legnaleurc:wszStr[4] = L'\0'; // 其實這是第五個字元 05/11 23:58
loveme00835:看你混用就覺得好難過 05/12 01:40
loveme00835:http://goo.gl/9nEnh 05/12 02:07
rosemary0401:原來是我粗心了 冏 05/12 23:17
rosemary0401:混用是甚麼意思啊? 05/12 23:17
loveme00835:標準裡沒有定義 WCHAR 這個形態, 不要跟 WinNT.h 混雜 05/13 03:47
loveme00835:在一起還不知道理由, 到時候改寫有得妳受 05/13 03:47