1
我試圖連接具有從ARGV數組的數組(我忘了,正式的名稱,輸入數組?參數數組?)數組c級聯問題
反正我initalize原始數組,然後我使用memcpy
將兩個數組複製到新數組中。
int main(int argc, char *argv[]) {
char *args1[] = {"foo","bar"};
char **args = (char**) calloc(argc, sizeof(char*));
memcpy(args, args1, sizeof(char*) * 2);
memcpy(args + sizeof(char*) * 2, argv+1, sizeof(char*) * (argc-1));
但是當我運行這個
printf("%s %s %s\n", args[0], args[1], args[2]);
,然後運行
./test巴茲
我得到的
結果富吧(null)
所以我想弄清楚我的第二個memcpy搞砸了,但我找不到它。任何幫助?提前致謝。
嘆了口氣。我知道我的指針算術,所以我很愚蠢的做出這樣的錯誤而沒有注意到它。這是我最後一次從rosettacode採取指針 – 2011-01-05 22:45:24