Artikel Terbaru

8 Pertimbangan yang Harus Dilakukan untuk Memilih Wallet Bitcoin

Wallet Bitcoin adalah program yang digunakan untuk mengirim dan menerima data transaksi Bitcoin, menyimpan catatan Bitcoin, dan memantau saldo Bitcoin. Sama seperti ketika seseorang memerlukan program email yang digunakan untuk mengelola data email -nya, pada Bitcoin juga terdapat program sejenis yang dapat digunakan untuk mengelola data Bitcoin tersebut, berupa wallet interface pada setiap node blockchain Bitcoin. Wallet digunakan untuk memantau alamat Bitcoin pada blockchain dan juga dapat digunakan untuk memperbarui saldo Bitcoin pada setiap transaksi.

6 Fakta tentang Variabel Static Bahasa C

Variabel static memiliki properti dari penyimpanan nilai setelah variabel tersebut keluar dari scope-nya. Variabel static menyimpan nilai sebelumnya pada scope sebelumnya dan tidak diinisialisasi lagi pada scope yang baru.

Sintak:
static data_type var_name = var_value;

Berikut ini beberapa fakta menarik tentang variabel static pada bahasa C:
satu, sebuah variabel static int tetap berada pada memori selama program dijalankan. Sebuah variabel normal atau auto akan dihancurkan memorinya ketika sebuah fungsi memanggil dimana variabel tersebut dideklarasikan ketika telah selesai beroperasi.

Contoh, digunakan static int untuk menghitung angka setiap kali fungsi dipanggil, tetapi pada variabel auto hal ini tidak bisa dilakukan untuk proses penghitungan tersebut.

Contoh program berikut akan mencetak "1 2"

/* Variabel static pada

 bahasa C */

#include<stdio.h>

 

int fun()

{

static int count = 0;

count++;

return count;

}

 

int main()

{

printf("%d ", fun());

printf("%d ", fun());

return 0;

}

Output:
1 2

Namun program berikut ini akan mencetak hasil "1 1"

/* Variabel static pada

 bahasa C */

#include<stdio.h>

 

int fun()

{

int count = 0;

count++;

return count;

}

 

int main()

{

printf("%d ", fun());

printf("%d ", fun());

return 0;

}

Output:
1 1

dua, Variabel static mengalokasikan memori pada segmen data, tetapi tidak pada segmen stack.

tiga, Variabel static seperti variabel global diinisialisasi dengan nilai 0 jika tidak diinisialisasi secara eksplisit. Contohnya seperti pada program berikut ini, nilai dari x akan dicetak sebagai 0, jika nilai dari y adalah garbage. Seperti terlihat pada program berikut:

/* Variabel Static Bahasa C */

#include <stdio.h>

 

int main()

{

static int x;

int y;

printf("%d \n %d", x, y);

}

Output:
0
[some_garbage_value]

empat, Pada bahasa C, variabel static hanya dapat diinisialisasi menggunakan konstanta literal. Contoh, perhatikan kesalahan program berikut pada saat kompilasi.

/* Variabel Static

 Bahasa C */

#include<stdio.h>

 

int initializer(void)

{

return 50;

}

 

int main()

{

static int i = initializer();

printf(" value of i = %d", i);

getchar();

return 0;

}

Output:
 In function 'main':
9:5: error: initializer element is not constant
     static int i = initializer();
     ^

lima, Variabel static global dan fungsi juga dimungkinkan penerapannya pada bahasa C dan C++. Tujuannya adalah membatasi scope dari variabel atau fungsi menuju sebuah file.

enam, Variabel static tidak seharusnya dideklarasikan di dalam structure. Alasannya, adalah kompilator membutuhkan seluruh elemen structure agar dapat diletakkan bersama dengan alokasi memori untuk anggota structure secara berdekatan. Sangat dimungkinkan untuk mendeklarasikan structure di dalam sebuah fungsi atau segmen stack ataupun alokasi memori dinamis atau segmen heap ataupun juga secara global seperti BSS atau segment data. Apapun bentuk kasusnya, semua anggota struktur harus berada pada segmen memori sama karena nilai untuk elemen structure dengan menghitung elemen offset dari alamat awal dari struktur. Memisahkan satu anggota saja ke segmen data mengalahkan tujuan variabel statis dan dimungkinkan untuk memiliki seluruh structure sebagai statis.

Komentar

  1. Variabel statis atau static variables adalah variabel yang dapat didefinisikan pada bagian dalam ataupun pada bagian luar dari fungsi yang terdapat pada bahasa C. Variabel tersebut nilainya bersifat lokal sesuai dengan blok tempat pendeklarasiannya. Nilai defaul dari variabel statis adalah nol. Variabel statis akan tetap aktif atau akan tetap dialokasikan memorinya selama program tersebut dijalankan.

    BalasHapus
  2. Apa fungsi dari variabel statis?

    BalasHapus
    Balasan
    1. Variabel statis adalah jenis variabel yang terkait dengan kelas pendeklarasiannya itu sendiri. Variabel statis digunakan untuk melacak informasi yang berhubungan dengan logika pada bagian keseluruhan kelas atau fungsi pada bahasa C, dimana hal ini berkebalikan dengan nilai variabel yang sifatnya bervariasi dari satu instance terhadap instance lainnya.

      Hapus
  3. Oke, maksih infornya, jadi sedikit paham tentang fungsi variabel static

    BalasHapus

Posting Komentar

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung. :D

Catatan: setiap iklan yang ditayangkan pada blog ini bersumber dari google adsense. Dengan jenis iklan yang dipilih adalah, sebagai berikut.

POIN 1, Iklan yang ditampilkan hanya boleh berbahasa indonesia atau berbahasa inggris. Tidak menerima jenis iklan dalam bahasa yang lain selain yang telah disebutkan karena blog ini dibuat untuk para pengunjung dari negara atau orang yang berbahasa Indonesia.

POIN 2, Setiap gambar yang ditampilkan pada iklan sifatnya tidak mengganggu para pengunjung yang melihat blog, atau tidak boleh menampilkan gambar yang bersifat menjijikkan atau merangsang rasa mual.

POIN 3, Jenis iklan yang dipasang bukan merupakan iklan spam, atau berisi dan mengarahkan pengunjung ke alamat yang berbahaya atau bersifat penipuan.

POIN 4, Segala bentuk iklan tunduk dan patuh pada ketentuan dari pihak Adsense google dan pemilik blog.

POIN 5, Segala jenis iklan yang tidak bertentangan dengan poin 1-4 yang dijelaskan sebelumnya, maka iklan tersebut dapat ditampilkan pada blog.

POIN 6, Jika ada pihak ketika yang ingin memasang iklan pada blog ini secara langsung, maka dapat menghubungi pemilik blog melalui kontak 0882 3218 8316.



~ Ikatlah Ilmu dengan Memostingkannya ~

Hot Artikel

Perbedaan stdio.h dan stdlib.h pada Bahasa C

6 Tahap Utama dalam Melakukan Kompilasi Program Hello World Java

Perbedaan Antara int main() dan int main(void) pada Bahasa C

Enkapsulasi pada Java

3 Jenis Utama Looping pada Java