Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Permulaan Tatasusunan Mengisi Tatasusunan dengan Sifar dalam C dan C?

Bagaimanakah Permulaan Tatasusunan Mengisi Tatasusunan dengan Sifar dalam C dan C?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-01 12:43:10278semak imbas

How Does Array Initialization Fill Arrays with Zeros in C and C  ?

Cara Permulaan Tatasusunan Mengisi Tatasusunan dengan Sifar

Pemulaan tatasusunan seperti tatasusunan char[100] = {0} menggunakan mekanisme yang mudah daripada mana-mana sihir misteri.

Dalam C, mengikut seksyen 6.7.8.21 daripada spesifikasi C, pengkompil memberikan penunjuk kepada NULL dan jenis aritmetik kepada sifar untuk elemen tatasusunan yang tidak ditentukan. Proses ini digunakan secara rekursif kepada agregat.

Dalam C , bahagian 8.5.1.7 spesifikasi C menentukan bahawa agregat pengkompil memulakan elemen tatasusunan yang tidak ditentukan.

Selain itu, C menyediakan pilihan senarai pemula kosong , tatasusunan char[100] = {}, yang mencetuskan pemulaan agregat untuk semua tatasusunan elemen.

Untuk mendapatkan cerapan tentang kod yang dijana oleh pengkompil dalam situasi sebegini, rujuk perbincangan dalam soalan "Himpunan pelik daripada pemulaan tatasusunan 0."

Atas ialah kandungan terperinci Bagaimanakah Permulaan Tatasusunan Mengisi Tatasusunan dengan Sifar dalam C dan C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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