Perwakilan Literal Jenis Data Pendek dalam C
Dalam C , pelbagai perwakilan literal wujud untuk jenis data yang berbeza, termasuk int, unsigned int, panjang, terapung, berganda, dan arang. Walau bagaimanapun, nampaknya terdapat pertanyaan mengenai perwakilan literal jenis data pendek.
Persoalannya timbul daripada kekurangan sintaks literal pendek yang eksplisit. Dengan analogi dengan jenis data lain, percubaan seperti "2S" menghasilkan amaran pengkompil. Penyelesaiannya, seperti yang disediakan oleh respons, adalah menggunakan pemutus.
Untuk mewakili literal pendek, seseorang boleh menggunakan sintaks (pendek)2. Walaupun bukan literal pendek, pelakon ini mencapai gelagat yang sama. Pengkompil menyimpulkan konteks dan mengoptimumkan kod dengan cekap, mengelakkan peruntukan int dan penghantaran yang tidak perlu.
Untuk kejelasan, mari kita periksa output pemasangan coretan kod berikut:
<code class="cpp">a = 2L; b = 2.0; c = (short)2; d = '';</code>
Output pembongkar mendedahkan bahawa semua pembolehubah yang diberikan dengan literal (2L, 2.0, (pendek)2, '2') dimulakan menggunakan arahan movl dengan nilai 2. Tingkah laku ini menunjukkan bahawa pengkompil mengendalikan penghantaran secara berkesan dan mengoptimumkan kod tanpa mengira perwakilan literal.
Atas ialah kandungan terperinci Bagaimanakah anda mewakili literal pendek dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!