Heim > Backend-Entwicklung > C++ > Warum funktioniert „printf' sowohl in „std::printf' als auch in „printf', wenn „' in C verwendet wird?

Warum funktioniert „printf' sowohl in „std::printf' als auch in „printf', wenn „' in C verwendet wird?

Barbara Streisand
Freigeben: 2024-10-26 05:43:30
Original
629 Leute haben es durchsucht

Why does `printf` work in both `std::printf` and `printf` when using `` in C  ?

cstdio Stdio.h Namespace

In der C-Referenzdokumentation für wird behauptet, dass sich alle Bibliothekselemente innerhalb des std befinden Namensraum. Experimente zeigen jedoch, dass sowohl std::printf- als auch printf-Funktionsaufrufe funktionieren. Bedeutet dies, dass C-Header Symbolnamen sowohl in den Standard- als auch den globalen Namespace importieren?

Antwort

Einschließlich importiert Symbolnamen in den std-Namespace und möglicherweise in den globalen Namespace. Im Gegensatz dazu gilt auch für importiert Symbolnamen in den globalen Namespace und integriert sie möglicherweise auch in den std-Namespace.

Dieses Verhalten gilt für alle Header im C-Stil. Gemäß dem C 11-Standard (Anhang D) verhalten sich C-Standardbibliotheksheader wie folgt:

"2 Jeder C-Header, von dem jeder einen Namen in der Form name.h hat, verhält sich so, als ob jeder Name platziert wäre im Standardbibliotheks-Namespace, indem der entsprechende CNAME-Header innerhalb des globalen Namespace-Bereichs platziert wird using-Deklarationen oder umgekehrt.

Das obige ist der detaillierte Inhalt vonWarum funktioniert „printf' sowohl in „std::printf' als auch in „printf', wenn „' in C verwendet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage