Attualmente ho un po 'di codice come (condensato e rimosso un po' di controllo degli errori):Croce piattaforma modo di testare se un file è una directory
dp = readdir(dir);
if (dp->d_type == DT_DIR) {
}
Questo funziona a meraviglia sulla mia macchina Linux. Tuttavia su un'altra macchina (sembra SunOS, SPARC):
SunOS HOST 5.10 Generic_127127-11 sun4u sparc SUNW,Ultra-5_10
ottengo il seguente errore in fase di compilazione:
error: structure has no member named `d_type'
error: `DT_DIR' undeclared (first use in this function)
ho pensato che il colpo di testa dirent.h
era multipiattaforma (per le macchine POSIX). Eventuali suggerimenti.
Quando vedo multipiattaforma, tendo a presumere che tu intenda Windows e possibilmente anche OS/2. :-) La risposta per Posix è semplice, e qualcuno lo ha già dato. – Omnifarious