我是以 c++ 為主力, 幾乎都是用 std::string, c style string 讓我吃盡苦頭。list 1, 2 展示了 strncpy 的難用之處, 要非常的小心, strncpy 的行為有時候幫你加 '\0', 有時候又不會。
《strcpy ,strncpy ,strlcpy地用法》已經做了解釋就不再多言了, 要小心的是其建議寫法:
strncpy 的标准用法为:(手工写上 /0) strncpy(path, src, sizeof(path) - 1); path[sizeof(path) - 1] = '/0'; len = strlen(path);
path 得確定是個 array 才行, 若是指標那就要倒大楣了。
沒有留言:
張貼留言
使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。
我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。