c - \_findfirst og wildcard matchning

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at bruge \_findfirst() Windows API i C for at matche filnavnet ved hjælp af jokertegn.
Hvis jeg går forbi ????????.txt, forventer jeg, at det vil matche alle filer i en mappe med kun 8 tegn, men det matcher mere end det.


Er der noget galt med denne brug?

Bedste reference


Jeg vil gætte, at det matcher på kortnavnet. På Windows har alle filer et langt navn og et DOS 8.3 kort navn. Derfor er '???????? .txt' effektivt det samme som '* .txt'.


Også på en pedantic note er \_findfirst () ikke en del af Windows API. Er det en del af Microsoft C run-time biblioteket.