2012-03-11 41 views
0

我需要縮短wchar_t數組。例如:C++縮短wchar_t數組

wchar_t* email = L"[email protected]"; 
/* Somehow leave in email just "name" */

我的想法做

wchar_t Domain = L"@domain.com"; 
if(!(pos = wcsstr(email, Domain))) 
    return 0; 

wcsncpy (pos,L"",1); 

wcsstr返回地址 「@ domain.com」(0x000001 - 電子郵件開始,0x000005 @ domain.com開始),但不會是任何記憶泄漏或垃圾?

+3

你可以說'電子郵件[4] = L '\ 0';'並繼續使用'email'。 – 2012-03-11 16:56:44

回答

3

不,這不會造成任何內存泄漏,因爲您沒有分配任何內存,或者修改原始指針email

更方便,更有效的語法,雖然會*pos = '\0';

+0

感謝您的關注:) – user1112008 2012-03-11 17:47:18