Witam,
od trzech tygodni uczę się programowania w C++. Obecnie chcę napisać prostą przeglądarkę do zdjęć PNG. Z pomocą przyszła mi biblioteka FLTK. W chwili obecnej bez problemu wczytuję zdjęcia podając w kodzie nawzę pliku, jednak chcę robić to seryjnie. W tym celu wykorzystuję Fltk_File_Chooser. Napotkałem jednak na problem, którego naprawdę nie rozumiem ](*,) i będę wdzięczny za wszelkie wskazówki…
Po pierwsze definiuję globalną tablicę wzkaźników typu char, która będzie mi przechowywała ścieżki do plików i ich nazwę. Rozmiar na razie dowolny.
const char* two[40];
Następnie wczytuję nazwy plików do powyższej tablicy… i tu zaczyna się problem. Nie rozumiem dlaczego tablica ta jest wypełniona poprawnymi danymi tylko w pierwszej pętli for, a w drugiej otrzymuję już krzaki. Gdzie popełniam błąd?
void input_file(Fl_File_Chooser *w, void *){
for( int k=1; k <= w->count(); k++ )
{
//wpisuję wartości do tablicy
two[k-1]=w->value(k);
cout<
}
//Tu już niestety mam krzaki - w każdym elemencie tablicy jest ta sama, ostatnia wybrana ścieżka
for( int k=1; k <= w->count(); k++ )
{
cout<
}
}
int main(void){
// .......
Fl_File_Chooser *fc = new Fl_File_Chooser(".", "Image Files (*.png)", Fl_File_Chooser::MULTI, "Please select image");
fc->callback(input_file);
fc->show();
//.........
return Fl::run();
Będę wdzięczny za wszelką pomoc i sugestie. Jeśli coś jest niejasnego to przepraszam i proszę o pytania.