Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Memulakan Ahli C Struct dengan Betul?

Bagaimanakah Saya Memulakan Ahli C Struct dengan Betul?

Barbara Streisand
Lepaskan: 2024-12-18 11:22:10
asal
721 orang telah melayarinya

How Do I Properly Initialize C   Struct Members?

Pemulaan Ahli Struktur C

Dalam C , ahli struct tidak dimulakan secara automatik kepada 0 atau sebarang nilai khusus apabila diisytiharkan tanpa senarai pemula. Ini bermakna bahawa nilai ahli struct yang tidak dimulakan adalah tidak tentu. Untuk memastikan ahli dimulakan kepada nilai yang dikehendaki, anda mesti memulakannya secara eksplisit.

Kaedah Permulaan

Terdapat beberapa cara untuk memulakan ahli struct:

  1. Senarai Pemula: Menggunakan senarai pemula dalam pengisytiharan struct ialah cara paling mudah untuk memulakan ahli. Contohnya:
struct Snapshot {
    double x = 0;
    int y = 0;
};
Salin selepas log masuk
  1. Permulaan Lalai: Sintaks permulaan lalai ({}) memulakan semua ahli kepada nilai lalai mereka. Dalam kes jenis primitif (seperti double dan int), ini ialah 0.
Snapshot s = {};
Salin selepas log masuk
  1. Permulaan Nilai: Apabila memulakan struct dengan pemula kosong senarai (iaitu, {}), permulaan nilai berlaku. Ini memulakan setiap ahli kepada nilai lalainya atau memanggil pembina lalai jika ahli ialah jenis yang ditentukan pengguna.
  2. Pembina dengan Senarai Permulaan: Jika struct mempunyai pembina, anda boleh menggunakan senarai permulaan dalam pembina untuk memulakannya ahli.
struct Snapshot {
    int x;
    double y;
    Snapshot(): x(0), y(0) { }
};
Salin selepas log masuk
  1. Operator Tugasan: Anda juga boleh menetapkan nilai kepada ahli struktur menggunakan operator tugasan (=).
Snapshot s;
s.x = 0;
s.y = 0;
Salin selepas log masuk

Adalah penting untuk ambil perhatian bahawa jika struct anda mempunyai pembina yang diisytiharkan pengguna, anda tidak boleh menggunakan senarai permulaan agregat (cth., {}). Dalam kes sedemikian, pemulaan eksplisit mesti dilakukan dalam pembina.

Atas ialah kandungan terperinci Bagaimanakah Saya Memulakan Ahli C Struct dengan Betul?. 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