Struktur di C

Structures C



Dalam C, struktur adalah pemboleh ubah yang ditentukan pengguna yang digunakan untuk menyimpan koleksi pemboleh ubah di bawah satu entiti. Marilah kita menggunakan analogi sederhana untuk menerangkan pelaksanaan dan kegunaan struktur dalam C.

Andaikan kita ingin menyimpan maklumat mengenai pengguna yang menggunakan perkhidmatan tertentu. Maklumat tersebut boleh merangkumi nama pengguna, e-mel, alamat, mod perkhidmatan, dan sebagainya. Untuk menyimpan maklumat tersebut, kita boleh membuat setiap atribut sebagai pemboleh ubah yang berdiri sendiri. Namun, apabila kita mempunyai sepuluh pengguna plus, kod tersebut dapat menjadi tidak terkawal dan menjadi sangat sukar dan melelahkan untuk dibaca.







Untuk menyelesaikannya, kita boleh membuat struktur. Di dalam struktur, kita dapat menyimpan semua atribut yang dikongsi oleh semua pengguna dan kemudian menambahkan pemboleh ubah unik untuk setiap pengguna.



Mari kita lihat pelbagai contoh untuk melihat bagaimana melaksanakannya.



Cara Menentukan Struktur di C

Untuk menentukan struktur dalam C, kami menggunakan kata kunci struktur diikuti dengan nama struktur. Selepas namanya, kami mempunyai sepasang pendakap kerinting di mana kami menambah anggota.





Pertimbangkan sintaks di bawah:

strukturnama_strukturan
{
/ * data * /
taip member_name;
taip member_name2;
taip member_nama3;

...
menaipahli_namaN;
};

Nama struktur boleh menjadi apa sahaja yang anda mahukan selagi mematuhi konvensyen penamaan bahasa pengaturcaraan C.



Kami dapat menerapkan struktur contoh analogi pengguna seperti:

strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
};

Cara Membuat Pemboleh ubah Struktur

Terdapat dua cara utama untuk membuat pemboleh ubah struktur. Yang pertama adalah menyatakannya seperti pemboleh ubah normal, dan yang lain adalah menetapkannya menggunakan pendakap kerinting.

Contoh di bawah menunjukkan cara menyatakan pemboleh ubah struktur sebagai pemboleh ubah C standard.

strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
};

intutama(intberhujah, char penyambung *berhujah[])
{
strukturpengguna pengguna1,pengguna2,pengguna3
kembali 0;
}

Kaedah lain untuk membuat pemboleh ubah struktur adalah seperti yang ditunjukkan di bawah:

strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
}pengguna1,pengguna2,pengguna3;

Dalam contoh ini, kami membuatnya semasa pengisytiharan struktur.

Ahli Struktur Init

Anda tidak dapat menginisialisasi anggota struktur semasa membuat kerana tidak ada memori yang diperuntukkan untuk jenisnya.

Untuk memulakan anggota struktur, anda menggunakan pendakap keriting seperti yang ditunjukkan di bawah:

strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
};
intutama(intberhujah, char penyambung *berhujah[])
{
strukturpengguna pengguna1= {'nama pengguna', '[dilindungi e-mel]', 35, benar}
kembali 0;
}

Anggota Struktur Akses

Untuk mengakses anggota struktur, kami menggunakan operator titik, bermula dengan nama struktur, titik, dan nama anggota.

strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
};
intutama(intberhujah, char penyambung *berhujah[])
{
strukturpengguna pengguna1= {'nama pengguna', '[dilindungi e-mel]', 35, benar}
pengguna1.e-mel = '[dilindungi e-mel]'
kembali 0;
}

Dalam contoh ini, kita mengakses anggota pengguna1.

Kata Kunci Typedef

Kami menggunakan kata kunci typedef untuk membuat alias untuk jenis data, menjadikan kod lebih mudah dibaca.

Sebagai contoh:

mesin taip strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
}awak;
intutama(intberhujah, char penyambung *berhujah[])
{
anda pengguna1= {'nama pengguna', '[dilindungi e-mel]', 35, benar}
pengguna1.berdaftar = salah
kembali 0;
}

Dalam contoh di atas, kami membuat alias u untuk struktur pengguna. Oleh itu, kami tidak perlu memanggil pengguna struktur setiap masa. Kami boleh menggunakan anda seperti yang dinyatakan di atas.

Petunjuk Struktur

Anda juga boleh mempunyai penunjuk ke struktur. Melakukan ini membolehkan anda mengakses ahli menggunakan operator ->.

Sebagai contoh:

mesin taip strukturpengguna
{
charnama pengguna[dua puluh];
chare-mel[225];
charalamat[lima puluh];
intumur;
bool didaftarkan;
}awak;
intutama(intberhujah, char penyambung *berhujah[])
{
anda pengguna1= {'nama pengguna', '[dilindungi e-mel]', 35, benar}

// penunjuk ke struktur lain
awak*pengguna_ptr= &pengguna1
pengguna_ptr->nama pengguna= 'nama pengguna'
kembali 0;
}

Kesimpulannya

Panduan ini merangkumi asas-asas bekerja dengan struktur dalam bahasa pengaturcaraan C.

Terima kasih kerana membaca!