1
因此,我有一個char **args
,但我想將所有字符串連接成單個char *newArgs
而不使用string.h
。如何在不使用string.h的情況下連接不確定數量的字符串
任何人都知道一個很好的方法來做到這一點?
因此,我有一個char **args
,但我想將所有字符串連接成單個char *newArgs
而不使用string.h
。如何在不使用string.h的情況下連接不確定數量的字符串
任何人都知道一個很好的方法來做到這一點?
這實際上是少數幾個不考慮標準實現(string.h)並構建自己的連接函數的案例之一,可以讓您獲得更好的結果。請參閱討論此主題的Joel's fantastic article。
但是回到你的問題:你需要對args
中的字符串進行兩次通過。在第一遍中,你總結了字符串的長度(不要忘記空終止符!)。現在你已經有了結果字符串的長度,你可以爲newArgs
分配一個緩衝區。另一方面,您將內容從args
複製到newArgs
。
你知道有多少參數,還是有其他一些終止方式? –
我可以弄清楚有多少。我也知道每個字符串都是以NULL結尾的 –
你可以先用'string.h'函數解決問題,然後實現你自己的替換版本。 – Blastfurnace