Pengisytiharan Pembolehubah Penunjuk dalam C/C : Memahami Gaya
Mengisytiharkan pembolehubah penunjuk dalam C/C telah mencetuskan perdebatan mengenai dua tatatanda:
(a) char* p;
(b) char *p;
Kedua-dua gaya adalah sah, tetapi pilihan tersebut mencerminkan perspektif dan penekanan pengaturcaraan yang berbeza.
Gaya (a): Penekanan pada Ungkapan
Gaya ini menganggap pembolehubah penunjuk (cth., p) sebagai entiti tunggal, di mana asterisk (*) ialah sebahagian daripada pengisytiharan nama. Dari sudut pandangan sintaks, asterisk mengikat nama p dan menunjukkan jenis pembolehubah (cth., penunjuk kepada aksara). Pendekatan ini sejajar dengan perspektif C tradisional, yang menekankan ungkapan dan menganggap pengisytiharan sebagai formaliti yang perlu.
Gaya (b): Penekanan pada Jenis
Sebaliknya, gaya (b) lebih menekankan jenis. Ia menganggap asterisk (*) sebagai sebahagian daripada spesifikasi jenis (cth., penunjuk kepada aksara). Gaya ini lebih selari dengan paradigma pengaturcaraan C, yang memberikan tumpuan yang kuat pada jenis dan prinsip berorientasikan objek.
Perspektif Bjarne Stroustrup
Bjarne Stroustrup, the pencipta C , menyokong gaya yang terakhir (int p;) kerana kejelasannya dalam menyatakan jenis pembolehubah (int*). Beliau menekankan bahawa pendekatan ini lebih sejajar dengan ciri lanjutan C .
Pertimbangan Kontekstual
Apabila mengisytiharkan berbilang pembolehubah penunjuk dalam satu baris, menggunakan asterisk dengan pembolehubah nama (gaya (a)) boleh menyebabkan kekeliruan. Contohnya:
char c, d;
Dalam kes ini, mungkin kurang jelas bahawa kedua-dua c dan d adalah penunjuk kepada aksara . Menggunakan asterisk dengan spesifikasi jenis (gaya (b)) menyelesaikan kekaburan ini:
char c, d;
Kesimpulan
Pilihan antara gaya (a) dan gaya (b) akhirnya adalah soal keutamaan peribadi dan falsafah pengaturcaraan. Gaya (a) mungkin lebih intuitif bagi mereka yang datang dari latar belakang C, manakala gaya (b) lebih sejajar dengan pendekatan berpusatkan jenis C .
Atas ialah kandungan terperinci Pengisytiharan Penunjuk C/C: `char* p` lwn. `char *p` – Gaya Mana Yang Terbaik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!