我想了解strcpy和strncpy的區別/缺點。 有人可以請幫助:當dest緩衝區小於src緩衝區時strcpy
void main()
{
char src[] = "this is a long string";
char dest[5];
strcpy(dest,src) ;
printf("%s \n", dest);
printf("%s \n", src);
}
輸出是:
this is a long string
a long string
問:我不明白,源刺痛是怎麼修改。按照解釋,strcpy的應該保持複製,直到它遇到「\ 0」,它確實是這樣,但怎麼來的「SRC」字符串得到了修改。
請解釋。
這稱爲緩衝區Overun。 – lsalamon 2009-10-21 16:00:36
此緩衝區溢出問題說明了爲什麼您應該選擇使用strcpy而不是strcpy。 – 2009-10-21 16:03:24
我無法重現您的代碼。我在dest數組中獲得'tring'。 – Spidey 2009-10-21 16:35:07