Anfänger ?
-
das würde aber gar nicht funktionieren, weil der ofen gar nicht über den fi abgesichert wird.
-
@Wade1234 sagte in Anfänger ?:
das würde aber gar nicht funktionieren, weil der ofen gar nicht über den fi abgesichert wird.
Dann nimmste den Hauptschalter daneben.
-
aber dann taut der gefrierschrank ab
-
@Wade1234 sagte in Anfänger ?:
mal sehen, wie lange es dauert, bis das hier alles an den _fcloseall-thread angehängt wird.
5 stunden? wow!
-
@biter sagte in Anfänger ?:
Es geht momentan nur darum, ob man _fcloseall() verwenden soll oder nicht.
Alle Bezeichner mit einem oder zwei "_" sind proprietäre Internas des Compilers, und man sollte sie in der Regel gar nicht nutzen. Ausnahmen bestätigen auch hier die Regel. Mir erscheint das so zu sein, dass hier eine interne Schnittstelle der Laufzeitumgebung genutzt wird. Das ist zwar technisch möglich, aber nicht unbedingt die sauberste Art und Weise vorzugehen. Wenn man auf C Niveau Error Handling macht – sprich
exit(EXIT_ERROR)
aufruft, dann mag so etwas normal erscheinen.
-
Interessant, dass die beiden Threads mittlerweile sehr weit oben bei Google auftauchen (zumindest bei mir), wenn man fcloseall bzw. _fcloseall sucht.
Die Diskussion an sich ist aber völlig sinnlos...
-
@john-0 sagte in Anfänger ?:
Alle Bezeichner mit einem oder zwei "_" sind proprietäre Internas des Compilers, und man sollte sie in der Regel gar nicht nutzen. Ausnahmen bestätigen auch hier die Regel. Mir erscheint das so zu sein, dass hier eine interne Schnittstelle der Laufzeitumgebung genutzt wird. Das ist zwar technisch möglich, aber nicht unbedingt die sauberste Art und Weise vorzugehen.
Die Funktionen der ms-crt wurden umbenannt um nicht mit POSIX-Funktionen zu kollidieren, die zwar meist ein ähnliches, aber doch hin und wieder ein für POSIX-Gewöhnte überraschendes Verhalten haben. Es spricht nichts dagegen diese Funktionen (die, deren Verwendung nicht per se total Banane ist) zu verwenden wenn es nicht auf Platformunabhängigkeit ankommt. Ob die jetzt mit
_
beginnen oder nicht. Mit_
-Prefix ist eben sichergestellt, daß sie nicht mit anderen Bezeichnern kollidieren.@Mechanics sagte in Anfänger ?:
Interessant, dass die beiden Threads mittlerweile sehr weit oben bei Google auftauchen (zumindest bei mir), wenn man fcloseall bzw. _fcloseall sucht.
Die Diskussion an sich ist aber völlig sinnlos...Ka*** schwimmt doch immer oben? ^^
-
@Mechanics sagte in Anfänger ?:
Interessant, dass die beiden Threads mittlerweile sehr weit oben bei Google auftauchen (zumindest bei mir), wenn man fcloseall bzw. _fcloseall sucht.
Die Diskussion an sich ist aber völlig sinnlos...Lässt vermuten, dass sonst niemand wirklich über diese Befehle redet....
-
normalerweise benutzt sie ja auch keiner, wozu auch?
-
was ich mich grad so frage: warum gibt es eigentlich keine funktion _fopenall()? das wäre doch bestimmt total bequem, alle dateien auf einmal öffnen zu können.
-
@Wade1234 sagte in Anfänger ?:
was ich mich grad so frage: warum gibt es eigentlich keine funktion _fopenall()? das wäre doch bestimmt total bequem, alle dateien auf einmal öffnen zu können.
Stimmt. Man gibt ein Verzeichnis an und dann fängt die Party an. Was ist nochmal die maximale Anzahl an möglichen Handles? Ist das noch 1024?
-
@It0101 sagte in Anfänger ?:
Was ist nochmal die maximale Anzahl an möglichen Handles? Ist das noch 1024?
Europäische oder afrikanische Handles?
-
das ist ganz schön wenig, oder? also meine zweite festplatte hat mindestens 150000 dateien (ich habs dann abgebrochen). wenn ich die jetzt alle mit 1 und 0 überschreiben möchte, kann ich ja gleich fopen nehmen.
-
@Swordfish sagte in Anfänger ?:
Ob die jetzt mit
_
beginnen oder nicht. Mit_
-Prefix ist eben sichergestellt, daß sie nicht mit anderen Bezeichnern kollidieren.Das ist eine ganz ganz schlechte Wahl der Bezeichner.
msrt_
o.ä. wäre mit Sicherheit sinnvoller gewesen, als einen Bezeichner mit einem_
am Anfang, denn solche Bezeichner sind laut Norm explizit für den Compiler und dessen Laufzeitumgebung reserviert.
-
"das ist genormt" bedeutet doch so viel wie "da hat jemand einen vorschlag gemacht, wie man es machen könnte, falls man lust haben sollte, sich an die norm zu halten", oder irre ich da?
-
@Wade1234 sagte in Anfänger ?:
"das ist genormt" bedeutet doch so viel wie "da hat jemand einen vorschlag gemacht, wie man es machen könnte, falls man lust haben sollte, sich an die norm zu halten", oder irre ich da?
Naja kein Compilerhersteller wird verklagt, weil er diese oder jene Funktion so oder so genannt hat...
-
@Wade1234 Da können wir ja froh sein, daß so viele Lust haben ^^
@john-0 Daß es für die Runtime reservierte bezeichner sind heißt doch nicht, daß man sie nicht aufrufen darf.
@john-0 sagte in Anfänger ?:
msrt_ o.ä. wäre mit Sicherheit sinnvoller gewesen
Nein, weil da wären im Gegensatz zu Bezeichnert die mit
_
beginnen Kollisionen mit Usercode/*
NICHT
*/
per Standard ausgeschlossen.
-
@Swordfish sagte in Anfänger ?:
Nein, weil da wären im Gegensatz zu Bezeichnert die mit
_
beginnen kollisionen mit Usercode mit per Standard ausgeschlossen.Das würde für jede Bibliothek gelten. Insofern ist das Argument nicht wirklich stichhaltig.
-
@john-0 sagte in Anfänger ?:
Das würde für jede Bibliothek gelten.
Ne, wieso soll das für jede Bibliothek gelten, bei der es einem völlig frei steht, sie zu verwenden? Um Einbinden von Standardheadern und linken gegen eine Standardlibrary kommt man aber nicht herum. (Komm mir jetzt nicht mit Freestanding Environments.)
-
@Swordfish sagte in Anfänger ?:
Ne, wieso soll das für jede Bibliothek gelten, bei der es einem völlig frei steht, sie zu verwenden?
Es geht um das grundsätzliche Problem von Namenskollisionen, und die explizite Definition der ISO Norm, dass nur Compiler- und Laufzeit-Internas in den Namensräumen
_
bzw.__
existieren dürfen. Das wird durch normale Funktionen konterkariert. Ergo, wäre es besser gewesen sie nicht dort unterzubringen. Spezielle UNIX bzw. Linux Eigenheiten werden ja auch nicht in die privaten Namensräume der Compiler verschoben, sondern existieren explizit im normalen Namensraum. Weshalb weicht Microsoft so von der Gepflogenheiten der C Programmierung ab?