[爆卦]C strcpy vs strcpy_s是什麼?優點缺點精華區懶人包

為什麼這篇C strcpy vs strcpy_s鄉民發文收入到精華區:因為在C strcpy vs strcpy_s這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者bestman8556 (廷廷)看板C_and_CPP標題[問題]複製字串使用strcpy、st...


開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++ 2013

額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無。

問題(Question):
1.在VC 2010版本,使用strcpy來複製字串,在compiler僅有僅告的提示。
但在VC 2013版本,使用strcpy變成錯誤訊息,硬是要我使用strcpy;
改成strcpy_s使用時發現:

void test(char *text)
char *str1;
str1=new char[strlen(tx)+1];
strcpy(str1,text); 這行出現錯誤。
strcpy_s(str1,text);所以依循更改訊息我更換成此行。

但卻出現以下錯誤訊息:
IntelliSense: 多載函式 "strcpy_s" 沒有任何執行個體符合引數清單
引數類型為: (char *, char *)
我試著把new取消就不會有這個錯誤訊息跑出。
想請問,我硬是要用new的話,有甚麼辦法可以解決呢???



2.想問,不知道還有甚麼指令,或是辦法可以複製字串呢??






--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.162.184.132
EdisonX:http://ppt.cc/P4aW strcpy_s(pDst,nBytes,pSrc); 01/03 00:43
xvid:既然都用vs了 字串就用std::string吧 個人是挺厭煩vs對一些 01/03 00:44
EdisonX:考慮 UNICODE 的話用 _tcscpy_s 較佳. M$ 這幾個函式很煩. 01/03 00:44
xvid:C函式自定些自家函式 未來維護也麻煩 01/03 00:45
bestman8556:已解決~~~ 感謝各位大大的解答!! 01/03 23:55

你可能也想看看

搜尋相關網站