Rumah >pembangunan bahagian belakang >C++ >Apakah perbezaan antara `(type)value` dan `type(value)` dalam C ?
Menyingkap Kehalusan (jenis)nilai berbanding jenis(nilai) dalam C
Dalam bidang pengaturcaraan C, perbezaan antara (jenis)nilai dan jenis(nilai) sering membingungkan pembangun. Mari kita mendalami topik ini untuk menjelaskan nuansanya.
Menurut piawaian C (§5.2.3), tiada perbezaan asas antara jenis(nilai) dan (jenis)nilai apabila berurusan dengan satu ungkapan. Kedua-dua ungkapan menghasilkan nilai jenis yang ditentukan diberikan senarai ungkapan.
Percanggahan timbul apabila mengendalikan senarai nilai yang dipisahkan koma. Dalam kes ini, jenis(nilai) membina pembolehubah sementara bagi jenis yang ditentukan dan mengembalikan nilainya, manakala nilai (jenis) hanya menukar nilai kepada jenis sasaran.
Perlu diperhatikan bahawa nama jenis tertentu mungkin tidak susun apabila menggunakan jenis(nilai). Sebagai contoh, semasa char (rentetan) menyebabkan ralat penyusunan, char_ptr(rentetan) berfungsi jika char_ptr ditakrifkan sebagai typedef untuk char .
Ringkasnya, manakala (type)value dan type (nilai) tidak menunjukkan perbezaan apabila berurusan dengan ungkapan tunggal, mereka menyimpang apabila bekerja dengan berbilang nilai. Yang terakhir mencipta pembolehubah sementara untuk memudahkan penukaran.
Atas ialah kandungan terperinci Apakah perbezaan antara `(type)value` dan `type(value)` dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!