Minä tarvitsisin koodia kaikkien .trk-päätteisen tiedostojen näyttämiseen siinä hakemistossa missä ohjelmakin ajetaan. Tarvitsen sitä Allegrolla toteutetun pelin alkuvalikkoon. Kyseessä on siis C eikä C++!
Seuraava esimerkki tulostaa kaikki trk-pääteiset tiedostot.
long handle; struct _finddata_t fileinfo; int i; int max=1000; handle=_findfirst("*.trk", &fileinfo); if (handle==-1L ) return FALSE; //Yhtään tiedostoa ei löytynyt printf(fileinfo.name); printf("\n"); for (i=0; i<max; i++) { if (_findnext(handle, &fileinfo)==0) { printf(fileinfo.name); printf("\n"); } else { break; } } _findclose(handle); return TRUE;
Ainkaan minun DJGPP:lläni ei ole noita rakenteita (_finddata_t), vaan ffblk. Muistaakseni Allegro on tehty sitä kääntäjää varten.
Seuraava esim toimii Djgpp:ssä
#include <dir.h> int main(int argn, char ** argc){ struct ffblk etsi; int a; //viimeinen luku sis. attribuutit; katso rhide:n help a = findfirst("*.trk", &etsi, 0); while(a == 0){ printf("%s\n\r",etsi.ff_name); a = findnext(&etsi); } return 0; }
Joo, kyllä minulla DJGPP on ja kiitos koodista!
Aihe on jo aika vanha, joten et voi enää vastata siihen.