Page 161 - PEMROGRAMAN DASAR MENGGUNAKAN C
P. 161

manapun. Dalam bahasa C, nilai yang digunakan untuk merepresentasikan nilai null ini
                      adalah dengan menggunakan konstanta NULL, yaitu konstanta yang telah didefinisikan
                      di  dalam  beberapa  file  header  (yaitu  <stdio.h>,  <stddef.h>  dan  <string.h>).
                      Dengan demikian, apabila kita ingin menginisialisasi suatu pointer ke nilai null, maka
                      kita dapat menuliskannya sebagai berikut.


                      int *P = NULL;



                      Selain  konstanta  NULL  di  atas,  kita  juga  dapat  menggunakan  nilai  0  untuk
                      merepresentasikan nilai null, sehingga kita mengganti sintak di atas dengan sintak di
                      bawah ini.


                      int *P = 0;


                      Nilai NULL dan 0 adalah sama karena nilai NULL sebenarnya merupakan konstanta yang
                      berupa makro, dimana kehadirannya akan digantikan dengan 0.

                      Apabila kita ingin melakukan pengecekan terhadap suatu pointer, apakah bernilai null
                      atau tidak, maka kita dapat melakukannya dengan cara berikut.


                      if (P != NULL) {
                         /* Statemen yang akan dilakukan */
                      }

                      atau

                      if (P != 0) {
                         /* Statemen yang akan dilakukan */
                      }


                      Sebagai contoh, di sini kita akan membuat fungsi untuk mencari teks di dalam teks lain,
                      seperti halnya fungsi strstr(), dimana fungsi ini akan mengembalikan nilai  NULL
                      apabila teks yang dicari tersebut tidak ditemukan. Adapun sintak programnya adalah
                      sebagai berikut.


                      #include <stdio.h>
                      #include <string.h>        /* untuk menggunakan fungsi strcpy() */

                      /* Mendefinisikan fungsi untuk pencarian teks */
                      char *CariTeks(char teks[], char cari[]) {
                         char *Pteks, *P1, *P2;

                         for (Pteks = &teks[0]; *Pteks != ‘\0’; Pteks++) {
   156   157   158   159   160   161   162   163   164   165   166