このコードを考えてみましょう:
char *strs[] = { "string1", "string2", NULL };
char *ptr1 = NULL, *ptr2 = NULL, *tmp;
short iter = 0;
tmp = ptr1;
while (iter < 2)
{
tmp = strdup(strs[iter]);
tmp = ptr2;
iter++;
}
printf("1: %s\n2: %s\n", ptr1, ptr2);
これで「string1\nstring2 \ n」を出力したいのですが、str1とstr2はnullのままです。私は何が間違っているのですか?