Rumah > pembangunan bahagian belakang > C++ > Mengapakah `printf` berfungsi dalam kedua-dua `std::printf` dan `printf` apabila menggunakan `` dalam C ?

Mengapakah `printf` berfungsi dalam kedua-dua `std::printf` dan `printf` apabila menggunakan `` dalam C ?

Barbara Streisand
Lepaskan: 2024-10-26 05:43:30
asal
631 orang telah melayarinya

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

cstdio Stdio.h Namespace

Dalam dokumentasi rujukan C untuk , ia mendakwa bahawa semua elemen perpustakaan berada dalam std ruang nama. Walau bagaimanapun, eksperimen menunjukkan bahawa kedua-dua panggilan fungsi std::printf dan printf berfungsi. Adakah ini menunjukkan bahawa pengepala C mengimport nama simbol ke dalam ruang nama std dan global?

Jawapan

Termasuk mengimport nama simbol ke dalam ruang nama std, dan berpotensi ruang nama global. Sebaliknya, termasuk mengimport nama simbol ke dalam ruang nama global, berpotensi memasukkannya ke dalam ruang nama std juga.

Tingkah laku ini meliputi semua pengepala gaya C. Menurut standard C 11 (Lampiran D), pengepala perpustakaan standard C berkelakuan seperti berikut:

"2 Setiap pengepala C, setiap satunya mempunyai nama nama borang.h, berkelakuan seolah-olah setiap nama diletakkan dalam ruang nama perpustakaan standard oleh pengepala cname yang sepadan diletakkan dalam skop ruang nama global."

Oleh itu, masih tidak pasti sama ada nama ini pada mulanya diisytiharkan atau ditakrifkan dalam ruang nama std dan kemudian disuntik ke dalam ruang nama global melalui menggunakan-pengisytiharan, atau sebaliknya.

Atas ialah kandungan terperinci Mengapakah `printf` berfungsi dalam kedua-dua `std::printf` dan `printf` apabila menggunakan `` dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan