Manakah Lebih Logik: char string vs char string?
Dalam C dan C , pengisytiharan nol -rentetan ditamatkan boleh ditentukan dalam dua cara:
Mengapa Gunakan char *rentetan?
Format char *rentetan biasanya diutamakan kerana ia memberikan kejelasan dalam menunjukkan sifat penunjuk rentetan. Asterisk (*) secara langsung mengikut aksara jenis data, membayangkan bahawa rentetan ialah penunjuk kepada aksara, bukan aksara itu sendiri.
Mengapa Gunakan rentetan char*?
Rentetan format char* juga digunakan untuk mengelakkan kekaburan apabila mengisytiharkan berbilang pembolehubah. Sebagai contoh, pertimbangkan pengisytiharan berikut:
char* string1, string2;
Dalam kes ini, string1 ialah penunjuk aksara, tetapi string2 ditafsirkan sebagai aksara tunggal kerana tiada asterisk (*) mendahuluinya. Untuk mengelakkan kekeliruan ini, adalah lebih baik untuk menulis:
char *string1, *string2;
Ini membuktikan bahawa kedua-dua string1 dan string2 adalah penunjuk aksara.
Kesimpulan
Walaupun kedua-dua notasi adalah sah secara teknikal, kebiasaan menggunakan char *rentetan disyorkan untuk memastikan kejelasan dan mengelakkan salah tafsir dalam pembolehubah pengisytiharan. Amalan ini amat berfaedah apabila mengisytiharkan berbilang pembolehubah jenis yang berbeza, termasuk penunjuk dan bukan penunjuk.
Atas ialah kandungan terperinci `char *string` lwn. `char* string`: Gaya Pengisytiharan Mana Yang Lebih Logik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!