Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Gunakan \'register int x=7;\' Daripada \'int x=7;\' dalam C ?

Mengapa Gunakan \'register int x=7;\' Daripada \'int x=7;\' dalam C ?

DDD
DDDasal
2024-10-24 05:48:30785semak imbas

Why Use 'register int x=7;' Instead of 'int x=7;' in C  ?

Memahami Perbezaan Antara 'int x=7;' dan 'daftar int x=7;' dalam C

Kata kunci 'int' dan 'register' kedua-duanya digunakan dalam C untuk mengisytiharkan pembolehubah. Kata kunci 'int' hanya menentukan jenis pembolehubah (dalam kes ini, integer), manakala kata kunci 'daftar' ialah pembayang kepada pengkompil, menasihatinya untuk menyimpan pembolehubah itu dalam daftar pemproses dan bukannya memori.

Dengan menggunakan kata kunci 'daftar', pengaturcara mencadangkan kepada pengkompil bahawa pembolehubah itu mungkin akan digunakan dengan kerap, dan menyimpannya dalam daftar pemproses akan meningkatkan prestasi. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pengkompil mungkin atau mungkin tidak mengikuti pembayang ini.

Sebagai contoh, jika pembolehubah 'x' hanya digunakan sekali atau dua kali, atau jika ia tidak mungkin diakses dengan kerap, pengkompil boleh memilih untuk mengabaikan petunjuk 'daftar' dan sebaliknya menyimpan pembolehubah dalam ingatan.

Menurut Herb Sutter dalam makalahnya bertajuk "Kata Kunci Yang Bukan (atau, Komen oleh Nama Lain)":

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

Pernyataan ini membayangkan bahawa kata kunci 'daftar' pada asasnya adalah cadangan kepada pengkompil dan pengkompil adalah percuma untuk memutuskan sama ada untuk menyimpan pembolehubah dalam daftar pemproses atau tidak.

Atas ialah kandungan terperinci Mengapa Gunakan \'register int x=7;\' Daripada \'int x=7;\' 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