本質的に、このコードは機能しますか?そして、「実行して見てください!」と言う前に、cygwinにgccが付属しておらず、現在、再インストールが完了するまでに40分かかることに気づきました。それは言われています:
char* words[1000];
for(int i = 0; i<1000; i++)
words[i] = NULL;
char buffer[ 1024 ];
//omit code that places "ADD splash\0" into the buffer
if(strncmp (buffer, "ADD ", 4) == 0){
char* temp = buffer + 4;
printf("Adding: %s", temp);
int i = 0;
while(words[i] != NULL) i++;
words[i] = temp;
}
私はその行についてchar* temp = buffer + 4
、そして私が自分のやり方で単語[i]を割り当てることができるかどうかについてもほとんど確信がありません。最終的にこれを40分でコンパイルしようとすると、タイプエラーが発生しますか?
また、これが機能する場合、words []の各要素でmalloc()を使用する必要がないのはなぜですか?words[i] = temp
単語[i]tempの長さにメモリを割り当てる代わりに、なぜ私は言うことができますか?