私はかなりの初心者でC
、C ルーチンを機能させようとしています。
const char *filenames[entry_count];
for (i = 0; i < entry_count; i++) {
char filename_inzip[256];
unz_file_info file_info;
err = unzGetCurrentFileInfo(uf, &file_info, filename_inzip,
sizeof(filename_inzip), NULL, 0, NULL, 0);
//This doesn't work. My array gets filled with the last entry over and over.
filenames[i] = filename_inzip; //Option 1
//Here I get SIGSEV errors, or gibberish in output when debugging values
strcpy(filenames[i], filename_inzip); //Option 2
}
char[256]
ループ内の同じ一時メモリアドレスを指しているだけなので、最初の割り当ては機能しないと思います。
malloc
2番目のオプションは、使用していないか、類似していないため、機能しないと思います。
適切に満たされた配列を取得するにはどうすればよいですか?