Rumah >pembangunan bahagian belakang >C++ >Bagaimana Anda Menulis Huruf Pendek dalam C?

Bagaimana Anda Menulis Huruf Pendek dalam C?

DDD
DDDasal
2024-10-31 00:29:03698semak imbas

How Do You Write Short Literals in C  ?

Menulis Huruf Pendek dalam C

Dalam C , beberapa tatatanda literal digunakan untuk mewakili jenis data yang berbeza, seperti 2 untuk int, 2L untuk panjang, dan '2' untuk char. Walau bagaimanapun, mungkin tidak jelas cara menulis literal secara ringkas, yang menyimpan integer 16-bit.

Masalah menjadi jelas apabila cuba menggunakan 2S sebagai literal pendek. Walaupun notasi ini mungkin kelihatan logik, ia menghasilkan amaran pengkompil. Penyelesaiannya terletak pada penggunaan cast untuk menukar integer kepada pendek secara eksplisit.

Untuk menulis literal pendek dalam C , ikut langkah berikut:

  1. Hantar integer ke pendek: Sertakan literal integer dalam kurungan dan hantarkannya ke pendek. Contohnya: (pendek)2

Pendekatan ini bukan sahaja literal pendek, tetapi ia berkelakuan serupa. C tidak menawarkan cara langsung untuk mewakili literal pendek.

Walaupun begitu, pengkompil mengoptimumkan kod supaya ia memperuntukkan memori untuk jangka pendek dan bukannya int. Berikut ialah contoh yang menunjukkan tingkah laku ini:

<code class="cpp">int a = 2L;
double b = 2.0;
short c = (short)2;
char d = '';</code>

Apabila disusun dan dibongkar, kod pemasangan yang dijana mendedahkan bahawa semua pembolehubah diperuntukkan memori seolah-olah ia adalah jenis yang betul:

movl    , _a
movl    , _b
movl    , _c
movl    , _d

Oleh itu, anda tidak perlu risau dengan ketidakcekapan pemutus apabila bekerja dengan literal pendek dalam C .

Atas ialah kandungan terperinci Bagaimana Anda Menulis Huruf Pendek dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn