struct stat und S_IFMT
-
Kann mir jemand folgenden Code-Ausschnitt erklähren?:
struct stat Status; int Dateityp; stat(argv[1],&Status); Dateityp = Status.st_mode & S_IFMT; <-------normalerweise ist ja der & operator der bitweise und operator wie wird er dann hier verwendet?
-
Wenn es dir allgemein um S_IFMT geht:
http://www.raspberryginger.com/jbailey/minix/html/stat_8h.html#b5bee51e9ee68b83ab11d4b340f7200b
bzw.
http://www.raspberryginger.com/jbailey/minix/html/stat_8h-source.htmlWenn es dir darum geht:
Dateityp variablen_name = Status.st_mode & S_IFMT;
variablen_name ist 0, wenn das Flag nicht gesetzt ist, ansonsten ist es ungleich 0
also kannst du dann so was tolles machen:if(Status.st_mode & S_IFMT) { /*...*/ }würd ich zumindest nach dem überfliegen der Doku schätzen - wahrscheinlich kann man dann noch iwas viel tolleres machen. Allerdings wärst du im falschen Forum, falls du wissen wölltest, was genau ^^ (ist kein standard c++ mehr)
bb