Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah Perbezaan Antara \'register\' dan \'int\' dalam C ?

Apakah Perbezaan Antara \'register\' dan \'int\' dalam C ?

Barbara Streisand
Barbara Streisandasal
2024-10-24 05:09:30554semak imbas

What is the Difference Between 'register' and 'int' in C  ?

Perbezaan antara 'daftar' dan 'int' dalam C

Apabila mengisytiharkan pembolehubah dalam C , pembangun boleh menggunakan 'daftar' kata kunci untuk memberi petunjuk kepada pengkompil bahawa pembolehubah tertentu harus berada dalam daftar pemproses dan bukannya dalam ingatan. Sebagai contoh, pertimbangkan kod berikut:

int x = 7;

dan:

register int x = 7;

Perbezaan antara kedua-dua contoh terletak pada penggunaan kata kunci 'daftar'. Dalam kes pertama, pembolehubah 'x' diisytiharkan sebagai integer dan akan berada dalam ingatan. Dalam kes kedua, kata kunci 'daftar' mencadangkan kepada pengkompil bahawa adalah berfaedah untuk menyimpan 'x' dalam daftar pemproses.

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pengkompil mempunyai budi bicara untuk mengabaikan ini cadangan. Seperti yang ditegaskan oleh Herb Sutter dalam "Kata Kunci Yang Bukan (atau, Komen oleh Nama Lain)":

"Penentukan daftar mempunyai semantik yang sama seperti penentu auto..."

Dalam perkataan lain, menggunakan 'daftar' hanya mengarahkan pengkompil untuk memperuntukkan 'x' dengan cara yang serupa dengan kata kunci 'auto', yang tidak mempunyai implikasi khusus untuk lokasi pembolehubah. Oleh itu, sementara 'daftar' menyampaikan keutamaan untuk storan daftar, pelaksanaan sebenar adalah mengikut budi bicara pengkompil.

Atas ialah kandungan terperinci Apakah Perbezaan Antara \'register\' dan \'int\' 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