source : codepolitan |
Hello World
C merupakan salah satu bahasa pemrograman tertua yang masih eksis dan digunakan di berbagai proyek penting seperti kernel Linux. Selain itu beberapa bahasa pemrograman seperti Python dan PHP pun menggunakan C untuk parser-nya dan tentu saja untuk membuat beberapa ekstensi kedua bahasa tersebut memerlukan kemahiran bahasa C yang cukup.
Umumnya banyak yang belajar bahasa C dengan menggunakan gcc ada juga yang menggunakan clang. Tapi bila ingin praktis silahkan gunakan saja gcc. Karena ini interactive coding, kamu cukup menggunakan browser dan tetep stay di Codepolitan.
C merupakan salah satu bahasa pemrograman tertua yang masih eksis dan digunakan di berbagai proyek penting seperti kernel Linux. Selain itu beberapa bahasa pemrograman seperti Python dan PHP pun menggunakan C untuk parser-nya dan tentu saja untuk membuat beberapa ekstensi kedua bahasa tersebut memerlukan kemahiran bahasa C yang cukup.
Umumnya banyak yang belajar bahasa C dengan menggunakan gcc ada juga yang menggunakan clang. Tapi bila ingin praktis silahkan gunakan saja gcc. Karena ini interactive coding, kamu cukup menggunakan browser dan tetep stay di Codepolitan.
Tipe Data
Di C ada beberapa tipe data dasar yang wajib diingat. Diantaranya:
* short
* int
* long
* float
* double
* char
* array
* pointer
* string
Ada juga modifier seperti unsigned yang dapat mengubah rentang default dari tipe data angka bulat dan angka koma.
Untuk formatting pada printf(), kamu dapat menggunakan beberapa tanda berikut:
%d untuk tipe data int dan short
%li untuk tipe data long
%f untuk tipe data float dan double
%c untuk tipe data char
%s untuk tipe data string
%p untuk tipe data pointer
Konversi Tipe Data
Kamu dapat melakukan konversi tipe data dari satu tipe data ke tipe data lain di C. Kamu dapat melakukannya dengan memberikan tanda (tipe_data) di depan variabel yang akan dikonversi.
Kemudian variabel yang akan dikonversi tersebut harus diterima oleh variabel lain yang sesuai dengan tipe data yang diinginkan.
Kamu dapat melakukan konversi tipe data dari satu tipe data ke tipe data lain di C. Kamu dapat melakukannya dengan memberikan tanda (tipe_data) di depan variabel yang akan dikonversi.
Kemudian variabel yang akan dikonversi tersebut harus diterima oleh variabel lain yang sesuai dengan tipe data yang diinginkan.
Operator Aritmatika
Di C ada beberapa operator aritmatika yang perlu diingat:
+ untuk tambah
* untuk perkalian
- untuk pengurangan
/ untuk pembagian
% untuk modulus (sisa bagi)
++ untuk menambahkan nilai ke variabel itu sendiri sebanyak 1
-- untuk mengurangi nilai ke variabel itu sendiri sebanyak 1
Operator ini hanya berlaku untuk tipe data short, int, dan long.
Di C ada beberapa operator aritmatika yang perlu diingat:
+ untuk tambah
* untuk perkalian
- untuk pengurangan
/ untuk pembagian
% untuk modulus (sisa bagi)
++ untuk menambahkan nilai ke variabel itu sendiri sebanyak 1
-- untuk mengurangi nilai ke variabel itu sendiri sebanyak 1
Operator ini hanya berlaku untuk tipe data short, int, dan long.
Operator Assignment (Pengisian)
Di C ada beberapa operator assignment yang dapat menambah operasi disamping menggunakan operator ++ atau -- saja.
Berikut adalah operator assignment yang perlu diingat:
+= untuk menambahkan sejumlah nilai ke variabel itu sendiri
-= untuk mengurangi dengan suatu nilai ke variabel itu sendiri
*= untuk mengalikan dengan suatu nilai ke variabel itu sendiri
/= untuk membagi dengan suatu nilai ke variabel itu sendiri
Operator ini hanya berlaku untuk tipe data short, int, dan long.
Di C ada beberapa operator assignment yang dapat menambah operasi disamping menggunakan operator ++ atau -- saja.
Berikut adalah operator assignment yang perlu diingat:
+= untuk menambahkan sejumlah nilai ke variabel itu sendiri
-= untuk mengurangi dengan suatu nilai ke variabel itu sendiri
*= untuk mengalikan dengan suatu nilai ke variabel itu sendiri
/= untuk membagi dengan suatu nilai ke variabel itu sendiri
Operator ini hanya berlaku untuk tipe data short, int, dan long.
Operator Comparison (Perbandingan)
Operator ini sangat diperlukan untuk kondisional dan perulangan yang ada di C. Digunakan untuk membandingkan dua buah variabel terutama dalam memeriksa kesamaan atau perbedaan derajat nilai.
Berikut operator comparison yang harus diingat:
>, lebih besar dari
<, kurang dari
>=, lebih besar sama dengan dari
<=, kurang sama dengan dari
==, sama dengan
!=, tidak sama dengan
Operator ini sangat diperlukan untuk kondisional dan perulangan yang ada di C. Digunakan untuk membandingkan dua buah variabel terutama dalam memeriksa kesamaan atau perbedaan derajat nilai.
Berikut operator comparison yang harus diingat:
>, lebih besar dari
<, kurang dari
>=, lebih besar sama dengan dari
<=, kurang sama dengan dari
==, sama dengan
!=, tidak sama dengan
Operator Logika
Operator ini sangat diperlukan untuk kondisional dan perulangan yang ada di C. Juga dikombinasikan dengan operator comparison untuk membuat sebuah logika kompleks.
Berikut operator logika yang harus diingat:
&&, AND (Dan)
||, OR (Atau)
Operator ini sangat diperlukan untuk kondisional dan perulangan yang ada di C. Juga dikombinasikan dengan operator comparison untuk membuat sebuah logika kompleks.
Berikut operator logika yang harus diingat:
&&, AND (Dan)
||, OR (Atau)
Operator Bitwise
Operator bitwise digunakan untuk menangani operasi bit pada suatu bilangan dalam representasi biner.
Operator bitwise yang harus kamu ingat di C antara lain:
&, melakukan operasi AND terhadap dua bilangan biner
|, melakukan operasi OR terhadap dua bilangan biner
~, melakukan operasi negasi terhadap bilangan biner
^, melakukan operasi XOR terhadap dua bilangan biner
>>, melakukan operasi penggeseran bit ke kanan terhadap bilangan biner
<<, melakukan operasi penggeseran bit ke kiri terhadap bilangan biner
Operator bitwise digunakan untuk menangani operasi bit pada suatu bilangan dalam representasi biner.
Operator bitwise yang harus kamu ingat di C antara lain:
&, melakukan operasi AND terhadap dua bilangan biner
|, melakukan operasi OR terhadap dua bilangan biner
~, melakukan operasi negasi terhadap bilangan biner
^, melakukan operasi XOR terhadap dua bilangan biner
>>, melakukan operasi penggeseran bit ke kanan terhadap bilangan biner
<<, melakukan operasi penggeseran bit ke kiri terhadap bilangan biner
Operator Lainnya
Operator ini memang tidak memiliki nama kelompok, oleh karena itu disebut operator lainnya. Berikut adalah operator lainnya yang ada di C:
&, mengambil alamat variabel/ pointer
*, menyatakan bahwa variabel tersebut adalah pointer
nilai == nilai ? true : false, adalah ternary operator yang dapat meringkas penulisan if yang sederhana
Operator ini memang tidak memiliki nama kelompok, oleh karena itu disebut operator lainnya. Berikut adalah operator lainnya yang ada di C:
&, mengambil alamat variabel/ pointer
*, menyatakan bahwa variabel tersebut adalah pointer
nilai == nilai ? true : false, adalah ternary operator yang dapat meringkas penulisan if yang sederhana
If dan Else
Di C untuk membuat kondisional ada berbagai cara. Salah satunya dengan menggunakan if dan else. Dengan menggunakan operator logika dan pembandingan juga. Kamu dapat menerapkan logika bisnis kedalam aplikasi yang kita buat.
Di C untuk membuat kondisional ada berbagai cara. Salah satunya dengan menggunakan if dan else. Dengan menggunakan operator logika dan pembandingan juga. Kamu dapat menerapkan logika bisnis kedalam aplikasi yang kita buat.
If dan Else If
Untuk menambah logika lain, kamu dapat menambahkan else if setelah if dan sebelum else untuk menambah logika yang ingin kamu terapkan pada aplikasi kamu.
Dengan demikian kamu dapat membuat logika bisnis yang sangat kompleks dan memiliki varian yang disesuaikan dengan keperluan aplikasi. Tentu saja else if ini memerlukan operator pembandingan dan logika.
Untuk menambah logika lain, kamu dapat menambahkan else if setelah if dan sebelum else untuk menambah logika yang ingin kamu terapkan pada aplikasi kamu.
Dengan demikian kamu dapat membuat logika bisnis yang sangat kompleks dan memiliki varian yang disesuaikan dengan keperluan aplikasi. Tentu saja else if ini memerlukan operator pembandingan dan logika.
Nested If
Bila sebuah kondisi harus memiliki kondisi lagi, C bisa membuat nested if yaitu if di dalam if. Bila kondisi pertama terpenuhi, maka kondisi di dalamnya akan diperiksa dan bila kondisi di dalam kondisi pertama terpenuhi, maka kode akan dieksekusi.
Kamu dapat menggunakan nested if untuk membuat logika yang sangat kompleks dan berlapis.
Bila sebuah kondisi harus memiliki kondisi lagi, C bisa membuat nested if yaitu if di dalam if. Bila kondisi pertama terpenuhi, maka kondisi di dalamnya akan diperiksa dan bila kondisi di dalam kondisi pertama terpenuhi, maka kode akan dieksekusi.
Kamu dapat menggunakan nested if untuk membuat logika yang sangat kompleks dan berlapis.
Switch
Switch digunakan untuk membuat sebuah kondisi yang lebih sederhana dan lebih ringkas. Digunakan untuk membuat sebuah pilihan yang cukup dengan "sama dengan" saja.
Deretan nilai akan dicocokkan hingga menemukan nilai yang sama.
Switch digunakan untuk membuat sebuah kondisi yang lebih sederhana dan lebih ringkas. Digunakan untuk membuat sebuah pilihan yang cukup dengan "sama dengan" saja.
Deretan nilai akan dicocokkan hingga menemukan nilai yang sama.
For
Di C kamu dapat mengulang suatu bagian kode dengan menggunakan pengulangan for. Kamu akan menggunakan operator ++ dan -- sebagai alat bantu untuk melakukan pengulangan dengan for.
Kamu juga akan menggunakan operator pembandingan untuk menentukan kondisi agar pengulangan kamu tetap berjalan seperti penggunaan tanda > dan <
Kamu dapat melakukan pengulangan menaik menggunakan tanda ++ dan pengulangan menurun dengan tanda --.
Di C kamu dapat mengulang suatu bagian kode dengan menggunakan pengulangan for. Kamu akan menggunakan operator ++ dan -- sebagai alat bantu untuk melakukan pengulangan dengan for.
Kamu juga akan menggunakan operator pembandingan untuk menentukan kondisi agar pengulangan kamu tetap berjalan seperti penggunaan tanda > dan <
Kamu dapat melakukan pengulangan menaik menggunakan tanda ++ dan pengulangan menurun dengan tanda --.
While
Di C kamu dapat melakukan pengulangan while. Pengulangan tersebut memerlukan sebuah kondisi yang dapat kamu tentukan dengan kebutuhan kamu. Dan tentu saja akan berhenti setelah memenuhi suatu kondisi. Pengulangan while pun dapat kamu atur agar terus berjalan sampai diberhentikan secara sengaja oleh kita melalui Ctrl + C ataupun dengan menutup kode program.
Pengulangan while di C hampir sama dengan bahasa pemrograman lain seperti PHP dan Java.
Di C kamu dapat melakukan pengulangan while. Pengulangan tersebut memerlukan sebuah kondisi yang dapat kamu tentukan dengan kebutuhan kamu. Dan tentu saja akan berhenti setelah memenuhi suatu kondisi. Pengulangan while pun dapat kamu atur agar terus berjalan sampai diberhentikan secara sengaja oleh kita melalui Ctrl + C ataupun dengan menutup kode program.
Pengulangan while di C hampir sama dengan bahasa pemrograman lain seperti PHP dan Java.
Do While
Di C, selain kamu dapat melakukan pengulangan while. Kamu dapat melakukan do while.
Pengulangan do while di C akan selalu mengeksekusi sebuah pengulangan minimal satu kali karena proses pemeriksaan kondisi dilakukan di bagian akhir.
Di C, selain kamu dapat melakukan pengulangan while. Kamu dapat melakukan do while.
Pengulangan do while di C akan selalu mengeksekusi sebuah pengulangan minimal satu kali karena proses pemeriksaan kondisi dilakukan di bagian akhir.
Pengenalan Array
Array adalah sebuah kesatuan dari suatu tipe data misal array dari char, int, float ataupun lainnya.
Untuk mendefinisikan array, kamu dapat menggunakan cara dinamis dan statis. Saat membuat array kamu dapat melewatkan angka yang akan menjadi ukuran array. Indeks array di C akan dimulai dari 0 sampai n - 1.
Sedangkan untuk array dinamis, kamu tidak perlu melewatkan ukuran array. Sehingga boleh diisi berapapun banyaknya.
Array adalah sebuah kesatuan dari suatu tipe data misal array dari char, int, float ataupun lainnya.
Untuk mendefinisikan array, kamu dapat menggunakan cara dinamis dan statis. Saat membuat array kamu dapat melewatkan angka yang akan menjadi ukuran array. Indeks array di C akan dimulai dari 0 sampai n - 1.
Sedangkan untuk array dinamis, kamu tidak perlu melewatkan ukuran array. Sehingga boleh diisi berapapun banyaknya.
Mengakses Array
Untuk mengakses array, kamu hanya perlu memanggil nama array diikuti dengan tanda [ dan ] kemudian tentukan indeksnya yang ingin diambil nilainya. Kamu juga dapat menggunakan looping for untuk mengeluarkan setiap isi yang ada di dalam array.
Dan tentu saja kamu harus megetahui ukuran array tersebut terlebih dahulu agar tidak terjadi error.
Untuk mengakses array, kamu hanya perlu memanggil nama array diikuti dengan tanda [ dan ] kemudian tentukan indeksnya yang ingin diambil nilainya. Kamu juga dapat menggunakan looping for untuk mengeluarkan setiap isi yang ada di dalam array.
Dan tentu saja kamu harus megetahui ukuran array tersebut terlebih dahulu agar tidak terjadi error.
Multidimensional Array
Selain membuat array satu dimensi, kamu dapat membuat array multidimensi dengan melewatkan banyak baris ketika membuat suatu array. Hal ini sangat bermanfaat bila kamu ingin melakukan operasi matriks seperti pada image processing.
Selain itu array multidimensi ini juga dapat digunakan untuk representasi tabel di dalam memori. Misal saat kita memuat data dari database, maka akan selalu disimpan dalam berupa array multidimensi.
Selain membuat array satu dimensi, kamu dapat membuat array multidimensi dengan melewatkan banyak baris ketika membuat suatu array. Hal ini sangat bermanfaat bila kamu ingin melakukan operasi matriks seperti pada image processing.
Selain itu array multidimensi ini juga dapat digunakan untuk representasi tabel di dalam memori. Misal saat kita memuat data dari database, maka akan selalu disimpan dalam berupa array multidimensi.
Pengenalan String
Pada dasarnya string adalah array of char yang dapat kamu tentukan panjangnya secara statis ataupun dinamis.
Untuk mencetak string dengan printf() kamu memerlukan %s untuk menampilkan isi variabel string.
Pada dasarnya string adalah array of char yang dapat kamu tentukan panjangnya secara statis ataupun dinamis.
Untuk mencetak string dengan printf() kamu memerlukan %s untuk menampilkan isi variabel string.
Panjang String
Untuk menghitung panjang string kamu dapat menggunakan strlen() terhadap suatu variabel yang berisi string.
Kamu dapat menggunakan function ini untuk menentukan banyaknya iterasi yang harus dilakukan saat mengeluarkan setiap char dari isi string.
Untuk menghitung panjang string kamu dapat menggunakan strlen() terhadap suatu variabel yang berisi string.
Kamu dapat menggunakan function ini untuk menentukan banyaknya iterasi yang harus dilakukan saat mengeluarkan setiap char dari isi string.
Menyalin String
Untuk mengisi suatu variabel string dengan string lain yang sudah ada, kamu dapat menggunakan strcpy() dimana isi dari string akan disalin ke variabel baru.
Tentunya kamu harus menentukan panjang string yang baru sama panjang dengan string yang akan disalin.
Untuk mengisi suatu variabel string dengan string lain yang sudah ada, kamu dapat menggunakan strcpy() dimana isi dari string akan disalin ke variabel baru.
Tentunya kamu harus menentukan panjang string yang baru sama panjang dengan string yang akan disalin.
Membandingkan String
Untuk memandingkan dua string yang berbeda, dapat kamu lakukan dengan menggunakan fungsi strcmp().
Fungsi strcmp() digunakan untuk menghitung nilai selisih dari dua buah karakter atau string. Misalnya, bila kita memanggil fungsi strcmp("a", "A"), maka output yang dihasilkan adalah 32, karena pada deretan karakter ASCII, huruf "a" ada pada urutan ke-32 setelah karakter "A". Dan bila kita memanggil dengan menukar urutan parameternya menjadi strcmp("A", "a"), maka output yang dihasilkan adalah -32, karena karakter "A" berada pada urutan ke-32 sebelum karakter "a".
Bila kita membandingkan karakter "a" dengan "a", outputnya akan bernilai 0, karena keduanya berada pada posisi yang sama. Dengan demikian fungsi strcmp() dapat digunakan untuk memastikan apakah kedua string isinya sama atau tidak. Bila hasilnya 0 maka artinya kedua string sama, dan bila hasilnya lebih dari 0 atau kurang dari 0 maka artinya kedua string tidak sama.
Untuk memandingkan dua string yang berbeda, dapat kamu lakukan dengan menggunakan fungsi strcmp().
Fungsi strcmp() digunakan untuk menghitung nilai selisih dari dua buah karakter atau string. Misalnya, bila kita memanggil fungsi strcmp("a", "A"), maka output yang dihasilkan adalah 32, karena pada deretan karakter ASCII, huruf "a" ada pada urutan ke-32 setelah karakter "A". Dan bila kita memanggil dengan menukar urutan parameternya menjadi strcmp("A", "a"), maka output yang dihasilkan adalah -32, karena karakter "A" berada pada urutan ke-32 sebelum karakter "a".
Bila kita membandingkan karakter "a" dengan "a", outputnya akan bernilai 0, karena keduanya berada pada posisi yang sama. Dengan demikian fungsi strcmp() dapat digunakan untuk memastikan apakah kedua string isinya sama atau tidak. Bila hasilnya 0 maka artinya kedua string sama, dan bila hasilnya lebih dari 0 atau kurang dari 0 maka artinya kedua string tidak sama.
Menggunakan Pointer
Pointer adalah sebuah variabel yang menyimpan alamat dari suatu variabel lain. Dengan menggunakan tanda * maka kita dapat menyatakan bahwa variabel tersebut adalah pointer dengan tipe data tertentu. Lebih jelasnya dapat simak video ini
Kemudian untuk mendapatkan suatu alamat pointer, kamu dapat menggunakan tanda & di depan nama variabel yang akan ditunjuk oleh pointer.
Untuk menampilkan alamat pointer, kamu dapat menggunakan tanda %p saat mencetaknya menggunakan printf(). Sedangkan untuk mencetak isi variabel yang ditunjuk oleh pointer, dapat kamu gunakan tanda didepan nama variabel pointer*.
Pointer adalah sebuah variabel yang menyimpan alamat dari suatu variabel lain. Dengan menggunakan tanda * maka kita dapat menyatakan bahwa variabel tersebut adalah pointer dengan tipe data tertentu. Lebih jelasnya dapat simak video ini
Kemudian untuk mendapatkan suatu alamat pointer, kamu dapat menggunakan tanda & di depan nama variabel yang akan ditunjuk oleh pointer.
Untuk menampilkan alamat pointer, kamu dapat menggunakan tanda %p saat mencetaknya menggunakan printf(). Sedangkan untuk mencetak isi variabel yang ditunjuk oleh pointer, dapat kamu gunakan tanda didepan nama variabel pointer*.
Menggunakan Pointer ke Pointer
Tidak hanya menunjuk sebuah variabel, kamu juga dapat menunjuk pointer dengan pointer.
Caranya agak sedikit berbeda dimana kamu dapat menggunakan tanda ** untuk membuat variabel yang dapat menujuk pointer.
Suatu pointer berubah isinya, jika variabel yahng ditunjuknya ikut berubah.
Tidak hanya menunjuk sebuah variabel, kamu juga dapat menunjuk pointer dengan pointer.
Caranya agak sedikit berbeda dimana kamu dapat menggunakan tanda ** untuk membuat variabel yang dapat menujuk pointer.
Suatu pointer berubah isinya, jika variabel yahng ditunjuknya ikut berubah.
Function
Di C kamu dapat menggunakan sebuah function. Sebuah bagian kode kecil yang dibungkus agar lebih mudah digunakan dan tidak perlu disalin ulang / reusable
Procedure adalah istilah function jika dia tidak memberikan sebuah nilai. Function adalah istilah function jika dia memberikan sebuah nilai.
Di C kamu harus menentukan apakah function tersebut mengembalikan suatu nilai atau tidak. Bila tidak mengembalikan suatu nilai maka tipenya void. Jika mengembalikan suatu nilai maka sesuaikan dengan tipe data yang akan dikembalikan ke variabel yang memanggilnya.
Bila suatu function mengembalikan suatu nilai maka harus ditampung oleh suatu variabel. Jika tidak maka dibiarkan saja.
Di C kamu dapat menggunakan sebuah function. Sebuah bagian kode kecil yang dibungkus agar lebih mudah digunakan dan tidak perlu disalin ulang / reusable
Procedure adalah istilah function jika dia tidak memberikan sebuah nilai. Function adalah istilah function jika dia memberikan sebuah nilai.
Di C kamu harus menentukan apakah function tersebut mengembalikan suatu nilai atau tidak. Bila tidak mengembalikan suatu nilai maka tipenya void. Jika mengembalikan suatu nilai maka sesuaikan dengan tipe data yang akan dikembalikan ke variabel yang memanggilnya.
Bila suatu function mengembalikan suatu nilai maka harus ditampung oleh suatu variabel. Jika tidak maka dibiarkan saja.
Parameter pada Function
Dalam menggunakan sebuah function, kamu dapat melewatkan beberapa parameter. Bila kamu ingin melewatkan parameter dengan tipe data yang sama, maka tidak perlu membubuhkan tipe datanya sebelum nama parameter.
Saat memanggil function yang telah dibuat, kamu harus melewatkan parameter entah itu secara hardcode ataupun melalui suatu variabel bahkan pointer.
Dengan menggunakan function, blok kode yang sama dapat dihemat penulisannya sehingga kamu tidak akan lelah dalam menulis kode.
Dalam menggunakan sebuah function, kamu dapat melewatkan beberapa parameter. Bila kamu ingin melewatkan parameter dengan tipe data yang sama, maka tidak perlu membubuhkan tipe datanya sebelum nama parameter.
Saat memanggil function yang telah dibuat, kamu harus melewatkan parameter entah itu secara hardcode ataupun melalui suatu variabel bahkan pointer.
Dengan menggunakan function, blok kode yang sama dapat dihemat penulisannya sehingga kamu tidak akan lelah dalam menulis kode.
Return Value pada Function
Setelah melewatkan parameter, kamu dapat mengembalikan suatu nilai pada function di bahasa C.
Tentunya jangan lupa berikan tipe data sebelum nama function yang dibuat. Kemudian jangan lupa tampung hasil kembaliannya menggunakan variabel dengan tipe data yang sama.
Setelah melewatkan parameter, kamu dapat mengembalikan suatu nilai pada function di bahasa C.
Tentunya jangan lupa berikan tipe data sebelum nama function yang dibuat. Kemudian jangan lupa tampung hasil kembaliannya menggunakan variabel dengan tipe data yang sama.
Parameter By Reference pada Function
Sebelumnya kita hanya melewatkan nilai dengan menggunakan konsep by value. Artinya parameter yang dilewatkan tidak akan mengubah variabel diatas blok kode yang memanggil suatu function.
Tapi sekarang, kita akan memanggil function dengan by reference yang artinya, pengubahan nilai di dalam suatu function dapat berakibat mengubah nilai diatas blok kode yang memanggil function tersebut.
Singkatnya, nilai yang dilewatkan sebelum memanggil function akan ikut berubah karena proses yang terjadi di function walaupun function tidak mengembalikan nilai apa - apa.
Sebelumnya kita hanya melewatkan nilai dengan menggunakan konsep by value. Artinya parameter yang dilewatkan tidak akan mengubah variabel diatas blok kode yang memanggil suatu function.
Tapi sekarang, kita akan memanggil function dengan by reference yang artinya, pengubahan nilai di dalam suatu function dapat berakibat mengubah nilai diatas blok kode yang memanggil function tersebut.
Singkatnya, nilai yang dilewatkan sebelum memanggil function akan ikut berubah karena proses yang terjadi di function walaupun function tidak mengembalikan nilai apa - apa.
Parameter Array pada Function
Untuk melewatkan array sebagai parameter pada suatu function, kamu hanya perlu menambahkan tanda pada nama parameter yang akan menerima array*.
Dan selebihnya, kamu dapat melakukan pemrosesan di dalam function terhadap array tersebut.
Return Value Array pada Function
Sekarang kita akan membuat suatu function yang dapat mengembalikan suatu array baru. Kamu hanya perlu menambahkan tanda * sebelum nama function. Kemudian jangan lupa di dalam function tersebut harus mengembalikan variabel array tersebut.
Untuk melewatkan array sebagai parameter pada suatu function, kamu hanya perlu menambahkan tanda pada nama parameter yang akan menerima array*.
Dan selebihnya, kamu dapat melakukan pemrosesan di dalam function terhadap array tersebut.
Return Value Array pada Function
Sekarang kita akan membuat suatu function yang dapat mengembalikan suatu array baru. Kamu hanya perlu menambahkan tanda * sebelum nama function. Kemudian jangan lupa di dalam function tersebut harus mengembalikan variabel array tersebut.
Parameter Pointer pada Function
Pointer dapat kamu gunakan untuk parameter suatu function. Suatu parameter dapat kamu beri tanda untuk dinyatakan sebagai pointer* yang akan menerima alamat suatu variabel.
Bila variabel tersebut bukan pointer dapat kamu lewatkan variabel tersebut dengan diawali tanda &. Sedangkan bila variabel tersebut pointer maka kamu tinggal melewatkan nama variabelnya saja.
Pointer dapat kamu gunakan untuk parameter suatu function. Suatu parameter dapat kamu beri tanda untuk dinyatakan sebagai pointer* yang akan menerima alamat suatu variabel.
Bila variabel tersebut bukan pointer dapat kamu lewatkan variabel tersebut dengan diawali tanda &. Sedangkan bila variabel tersebut pointer maka kamu tinggal melewatkan nama variabelnya saja.
Return Value Pointer pada Function
Untuk mengembalikan suatu keluaran berupa pointer, kamu cukup menambahkan saja tanda * sebelum nama function. Kemudian hasilnya harus diterima oleh variabel pointer dengan tipe data yang sama.
Untuk mengembalikan suatu keluaran berupa pointer, kamu cukup menambahkan saja tanda * sebelum nama function. Kemudian hasilnya harus diterima oleh variabel pointer dengan tipe data yang sama.
Struct
Struct adalah sebuah cara untuk membuat tipe data yang sangat kompleks dimana tidak hanya memiliki satu tipe data saja.
Bila di OOP kita dapat mengenal yang namanya class, hanya saja struct merupakan class tanpa method jadi hanya berisi atributnya saja. Struct digunakan bila kita nantinya ingin mengemas beberapa data sekaligus dalam satu wadah.
Kamu dapat mengisi setiap atribut yang ada pada struct dengan nilai, kemudian dapat dikeluarkan lagi untuk diproses ataupun dicetak saja.
Struct adalah sebuah cara untuk membuat tipe data yang sangat kompleks dimana tidak hanya memiliki satu tipe data saja.
Bila di OOP kita dapat mengenal yang namanya class, hanya saja struct merupakan class tanpa method jadi hanya berisi atributnya saja. Struct digunakan bila kita nantinya ingin mengemas beberapa data sekaligus dalam satu wadah.
Kamu dapat mengisi setiap atribut yang ada pada struct dengan nilai, kemudian dapat dikeluarkan lagi untuk diproses ataupun dicetak saja.
Parameter Struct pada Function
Untuk melewatkan sebuah struct ke dalam function, caranya agak sedikit repot. Kamu harus melewatkan nama parameter yang diawali dengan tanda * dan keyword struct diikuti nama struct yang akan dilewatkan.
Setelah itu kamu tinggal melewatkan variabel struct yang diawali oleh tanda &.
Untuk melewatkan sebuah struct ke dalam function, caranya agak sedikit repot. Kamu harus melewatkan nama parameter yang diawali dengan tanda * dan keyword struct diikuti nama struct yang akan dilewatkan.
Setelah itu kamu tinggal melewatkan variabel struct yang diawali oleh tanda &.
Return Value Struct pada Function
Kamu dapat mengembalikan suatu struct dari dalam function. Tentu saja function tersebut harus memiliki tipe struct tersebut, dan diterima oleh variabel dengan tipe struct yang sama.
Dengan menggunakan cara ini, kamu mempunyai keuntungan untuk menghemat baris kode yang digunakan untuk menghasilkan sebuah struct.
Typedef Struct
Memang agak boros juga bila kita harus selalu mengetik "struct Users" di setiap bagian kode seperti pada parameter function, menulis function, dan membuat variabel struct.
Oleh karena itu kita dapat menggunakan typedef yang dapat meringkas penulisan tersebut menjadi nama yang ditentukan pada typedef.
Reference :
Belajar coding secara interaktif membahas tentang bahasa pemrograman C
Kamu dapat mengembalikan suatu struct dari dalam function. Tentu saja function tersebut harus memiliki tipe struct tersebut, dan diterima oleh variabel dengan tipe struct yang sama.
Dengan menggunakan cara ini, kamu mempunyai keuntungan untuk menghemat baris kode yang digunakan untuk menghasilkan sebuah struct.
Typedef Struct
Memang agak boros juga bila kita harus selalu mengetik "struct Users" di setiap bagian kode seperti pada parameter function, menulis function, dan membuat variabel struct.
Oleh karena itu kita dapat menggunakan typedef yang dapat meringkas penulisan tersebut menjadi nama yang ditentukan pada typedef.
Reference :
Belajar coding secara interaktif membahas tentang bahasa pemrograman C
To keep in touch :
Instagram : @patrick_vivo
Pinterest : Patrick Ananta
Twitter : @AnantoPatrick
Facebook : Patrick Ananta
Google+ : Patrick Ananta
MATUR SUWUN!
No comments:
Post a Comment