Rumah Kewangan Peribadi Pembolehubah Global dalam Pengaturcaraan C - dummies

Pembolehubah Global dalam Pengaturcaraan C - dummies

Isi kandungan:

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024
Anonim

Kadang-kala dalam pengaturcaraan C, pemboleh ubah mestilah seperti perkhidmatan telefon bimbit: tersedia di mana-mana sahaja. Pembolehubah ini juga boleh digunakan oleh mana-mana fungsi pada bila-bila masa. Pemboleh ubah jenis ini boleh dipanggil pembolehubah sejagat . Ia boleh dipanggil pembolehubah di seluruh dunia . Tetapi dalam C, ia dirujuk sebagai pembolehubah global .

Bagaimana untuk menggunakan pembolehubah global

Pembolehubah global menyelesaikan masalah tertentu dengan membuat pengisytiharan berubah universal. Dengan cara itu, sebarang fungsi di mana-mana sahaja dalam program boleh mengakses pemboleh ubah. Ia tidak perlu diluluskan atau dikembalikan dari suatu fungsi.

Tossing Your Age Around menunjukkan bagaimana variabel global diisytiharkan dan digunakan. Pembolehubah global umur dan float dipengaruhi oleh kedua-dua fungsi. Mereka boleh diserahkan kepada fungsi tersebut, tetapi kedua-dua nilai tidak dapat dikembalikan. (Fungsi C hanya mengembalikan satu nilai.) Oleh itu, pembolehubah global digunakan sebagai penyelesaian.

MENANGANI AGE ANDA DI SEKITAR

#include void half (void); tidak sah dua kali (tidak sah); umur int; kaki terapung; int main () {printf ("Berapa umur anda:"); scanf ("% d", & umur); printf ("Berapa tinggi kamu (dalam kaki):"); scanf ("% f", & kaki); printf ("Anda berusia% d tahun dan% 1f tinggi, n", umur, kaki); separuh(); dua kali (); printf ("Tetapi anda tidak benar-benar% d tahun atau%. 1f kaki tinggi n", umur, kaki); kembali (0);} void half (void) {float a, h; a = (float) umur / 2. 0; printf ("Setengah umur anda ialah% 1f n", a); h = kaki / 2. 0; printf ("Separuh ketinggian anda ialah% 1f n", h);} batal dua kali (tidak sah) {umur * = 2; printf ("Dua kali umur anda ialah% d. n", umur); kaki * = 2; printf ("Dua ketinggian anda adalah% 1fn", kaki);}

Baris 6 mengisytiharkan pembolehubah int global umur dan pembolehubah terapung kaki . Ini adalah pembolehubah global kerana mereka diisytiharkan di luar fungsi mana-mana, di sana di #include, #define, dan prototaip tanah. Pemboleh ubah kemudian digunakan dalam setiap fungsi. Nilai mereka boleh diakses sepanjang kod. Walaupun nilai tersebut berubah dalam fungsi dua kali (), fungsi utama () menggunakan nilai-nilai baru.

Perhatikan bahawa dua pernyataan printf () dalam fungsi utama () membungkus teks mereka di Tossing Your Age Around. Anda tidak perlu membungkus kenyataan tersebut dalam editor teks; hanya taipkan semuanya dalam satu baris.

Latihan 1 : Taip kod sumber untuk Menghilangkan Umur Anda Sekitar ke editor anda, buat program baru. Bina dan lari.

Jangan malas menggunakan pembolehubah global! Jika anda boleh lulus nilai untuk fungsi, berbuat demikian! Ia betul. Terlalu ramai pengaturcara yang tidak percaya mengisytiharkan semua pembolehubah mereka global "menyelesaikan masalah ini."Itu ceroboh dan tidak betul.

Contoh baik pemboleh ubah global termasuk maklumat yang semua fungsi dalam program itu perlu diketahui, seperti maklumat pengguna atau sama ada anda dalam talian atau sama ada teks dipaparkan atau tersembunyi. Dalam hal ini, pertimbangkan untuk membuat pemboleh ubah tersebut sebagai global.

Bagaimana untuk mencipta pembolehubah struktur global

Contoh yang lebih baik menggunakan pembolehubah global, dan situasi di mana pembolehubah global adalah benar-benar perlu, adalah ketika melewati struktur ke fungsi. Dalam hal ini, anda mesti mengisytiharkan struktur sebagai global supaya semua fungsi dapat mengakses pembolehubah jenis struktur itu.

Jangan biarkan panjang Lulus Struktur ke Fungsi mengintimidasi anda! Kebanyakan program "sebenar" yang anda tulis akan menjadi lebih lama!

MEMBERIKAN STRUKTUR KE FUNGSI

#include #include #include #define SIZE 5 struct bot {int xpos; int ypos;}; bot bot permulaan (struct bot b); int main () {rob robot bot struktur [SIZE]; int x; srandom (masa tidak ditandatangani) (NULL)); untuk lulus struktur ke fungsi, struktur mesti diisytiharkan di seluruh dunia, yang berlaku di antara Talian 7 dan 10. Itu perlu berlaku sebelum fungsi prototaip, yang berlaku di Baris 12. 

Fungsi inisialisasi () berjalan dari Lines 30 hingga 41. Struktur tersebut diluluskan kepada fungsi dan dikembalikan.Perhatikan bahawa pemboleh ubah struktur mesti didefinisikan sepenuhnya sebagai hujah.On Line 30, fungsi diberikan nama pembolehubah

b di dalam fungsi. Pernyataan pulangan di Jalur 40 melintasi struktur kembali ke fungsi panggilan. nilai itu akan kembali.

Latihan 2

: Skru keberanian anda ke tempat yang melekat, dan ketik semua baris kod sumber daripada Meluluskan Struktur ke Fungsi ke editor anda Membina dan jalankan Output menunjukkan bagaimana array struktur diluluskan (satu elemen pada satu masa) ke fungsi, diubah suai dalam func kemudian, dan kemudian kembali.

Pembolehubah Global dalam Pengaturcaraan C - dummies

Pilihan Editor

Melindungi Metrik Media Sosial anda dengan Alat Cadangan - dummies

Melindungi Metrik Media Sosial anda dengan Alat Cadangan - dummies

Jika anda telah memulakan jejak sosial metrik media dan menikmati kurniaan data yang kini dapat dilihat, dihidupkan, dan digunakan, anda mungkin tertanya-tanya apa yang mungkin menyebabkan kemurungan! Mudah: kehilangan data. Katakanlah bahawa anda mempunyai masalah tapak atau entah bagaimana kehilangan akses ke tapak atau data anda. Adakah anda mempunyai sandaran anda ...

Laman web baru? Menarik Tumpuan Media Sosial Lalu Lintas dan Meningkat - dummies

Laman web baru? Menarik Tumpuan Media Sosial Lalu Lintas dan Meningkat - dummies

Mana-mana kempen baru, laman web, akaun Twitter, halaman Facebook, atau item lain yang anda ingin ukur dengan metrik media sosial bermula pada sifar. Nombor ini boleh membuat anda merasa seperti anda bercakap dengan tidak sah, bercakap dengan diri anda atau anda tersembunyi dari pandangan. Perasaan ini boleh membawa kepada pengasingan secara keseluruhan ...

Meracuni Google Spider - dummies

Meracuni Google Spider - dummies

Anda sentiasa dapat mencari orang yang ingin menyimpang dari lurus dan sempit. Ya, mereka adalah orang bodoh yang terlibat dalam taktik pengoptimuman berisiko yang bertujuan untuk menggerakkan PageRank secara artifisial, memanipulasi pesanan halaman hasil carian di Google, dan mendapatkan kelebihan yang tidak adil dalam indeks. Google, dengan reputasi yang luar biasa untuk melindungi, ...

Pilihan Editor

Mengukur Pengunjung Lama Menginap di Laman Web Anda - dummies

Mengukur Pengunjung Lama Menginap di Laman Web Anda - dummies

Di laman web anda memberikan wawasan yang penting. Anda boleh memikirkan sama ada pengunjung sedang melihat cepat, kemudian pergi, atau sama ada mereka bertahan lebih lama dan sebenarnya membaca bahan dalam talian anda dengan tujuan untuk mengambil tindakan. Jika majoriti pelawat laman web anda tidak ...

Pemasaran web: Cara Menilai Layouts dengan Peta Haba - dummies

Pemasaran web: Cara Menilai Layouts dengan Peta Haba - dummies

Laman web perniagaan sangat mirip dengan merancang kedai dengan pemasaran produk dalam fikiran. Malah, laman web anda benar-benar adalah kedai - kedai maya di Internet. Rangkaian kedai runcit telah menghabiskan berjuta-juta dolar dalam penyelidikan pasaran, menonton dan mendokumentasikan bagaimana pembeli memasuki kedai, belok kanan atau kiri, dan ...

Analitik web Untuk Menipu Cheat Sheet - dummies

Analitik web Untuk Menipu Cheat Sheet - dummies

Melakukan analisis laman web tidak perlu meletihkan dan intensif masa. Anda boleh meringkaskan prestasi keseluruhan laman web anda dengan cepat - jika anda tahu apa yang perlu dicari. Alat analisis web percuma dan kos rendah boleh membantu anda mengukur kejayaan laman web anda, dan anda boleh menjana perujuk tapak dengan pelbagai cara yang tidak mungkin ...

Pilihan Editor

Cara Memaksimumkan Ruang pada Laman Web - dummies

Cara Memaksimumkan Ruang pada Laman Web - dummies

Terlalu terhad, anda boleh membuat penggunaan kreatif beberapa teknologi di luar sana untuk memaksimumkan antara muka anda. Untuk setiap teknik berikut yang diterangkan, terdapat banyak laman web yang menawarkan sampel kod, forum, dan sumber untuk membantu anda memulakan. Accordions. Antara muka akordion membolehkan ...

Cara Mendapatkan Corak CSS3 Online - dummies

Cara Mendapatkan Corak CSS3 Online - dummies

Mencipta kesan mudah untuk laman CSS3 menggunakan gradien mudah . Walau bagaimanapun, mewujudkan sesuatu yang benar-benar hebat memerlukan masa dan keupayaan artistik. Kebanyakan pemaju benar-benar tidak mempunyai masa atau kemahiran yang diperlukan untuk mencipta sesuatu yang mempesonakan menggunakan CSS3 sahaja (atau CSS3 digabungkan dengan grafik) - di sinilah pereka bermain. Ramai pereka yang membolehkan anda ...

Bagaimana Mengoptimumkan Aplikasi CSS3 dengan Modernizr - dummies

Bagaimana Mengoptimumkan Aplikasi CSS3 dengan Modernizr - dummies

Terdapat banyak pelayar dan versi pelayar yang berbeza gunakan hari ini. Tidak semua daripada mereka adalah optimum untuk CSS3. Inilah tempat Modernizr dimainkan. Pemajunya menyebutnya "perpustakaan JavaScript yang mengesan ciri HTML5 dan CSS3 dalam pelayar pengguna. "Anda menggunakan Modernizr untuk melaksanakan tugas secara pilihan dan memasukkan ciri aplikasi berdasarkan ...