Rumah > Artikel > pembangunan bahagian belakang > \'const int\' vs. \'int const\': Apakah Perbezaan dalam C dan C ?
Parameter Fungsi dalam C dan C : 'const int' vs. 'int const'
Dua pengisytiharan parameter fungsi yang serupa dalam C dan C ialah 'const int' dan 'int const'. Walaupun mereka mungkin kelihatan sama, terdapat perbezaan halus antara kedua-duanya.
Pengisytiharan Const dalam C
Dalam C, pengisytiharan 'const int' membayangkan bahawa pembolehubah diluluskan sebagai parameter adalah malar, bermakna nilainya tidak boleh diubah suai dalam fungsi. Walau bagaimanapun, nilai yang dihantar sebagai hujah kepada parameter ini boleh menjadi pemalar atau pembolehubah.
Contoh:
<code class="c">int testfunc1 (const int a) { // a is constant within the function, but the argument can be variable. }</code>
Pengisytiharan Const dalam C
Dalam C , 'int const' mengikut peraturan yang sama seperti dalam C, tetapi 'const int' mempunyai tafsiran tambahan. Ia juga membayangkan bahawa pembolehubah dimulakan dengan nilai malar, yang tidak boleh diubah suai dalam fungsi.
Contoh:
<code class="cpp">int testfunc2(int const a) { // Both a and the argument must be constants. }</code>
Helah Membaca untuk Pengisytiharan
Untuk lebih memahami perbezaannya, helah yang berguna ialah membaca pengisytiharan ke belakang:
Implikasi
Kedua-dua pengisytiharan menunjukkan bahawa nilai yang diluluskan tidak boleh diubah suai dalam fungsi. Walau bagaimanapun, keperluan permulaan dalam C (untuk 'const int') menambah kekangan tambahan.
Contoh:
<code class="cpp">const char *s; // s is a pointer to a char that is constant char *const t = &c; // t is a constant pointer to a char</code>
Dalam kes ini, nilai ' s' boleh berubah (kerana ia penunjuk), tetapi nilai 't' tidak boleh.
Atas ialah kandungan terperinci \'const int\' vs. \'int const\': Apakah Perbezaan dalam C dan C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!