Ich habe diese Frage bei der Eingabe von man 2 open
. Es besagt, dass es zwei Arten von offenen gibt, eine mit zwei Argumenten und eine mit drei Argumenten! Als ich das letzte Mal nachprüfte, konnten wir Funktionen in C nicht überladen. Wie haben sie das gemacht? haben sie in C++ geschrieben?Warum sagt 'man 2 open', dass es zwei Arten von offenen gibt?
int open(const char * pathname, int flags);
int open(const char * pathname, int flags, mode_t mode);
Wenn der Compiler Kenntnis von POSIX hat oder über eine Spracherweiterung auf die Argumenttypen der Funktion aufmerksam gemacht wurde, kann er die Überprüfung durchführen. Wenn gcc/glibc das nicht schon macht, wäre ich nicht überrascht, wenn sie es bald hinzufügen würden, genau wie das Argument 'printf' überprüft. –
Danke, es hat wirklich geholfen. –