String sebenarnya merupakan penggunaan tipe data char secara
berkelompok. Tipe data string merupakan array dari tipe data char.
1.
Variabel String
a.
Deklarasi Variabel String :
Karena string merupakan array dari char, maka pendeklarasiannya sama
dengan mendeklarasikan array dari char, yaitu :
Char nama_var [ jml_karakter ]
Contoh :
char alamat [40] –> deklarasi variabel alamat dengan tipe data
string.
Nilai Variabel alamat terdiri dari beberapa karakter maksimal 40
karakter (0 s/d 39)
b.
Inisialisasi Variabel String :
Variabel string dapat diinisialisasi dengan cara seperti berikut :
Char x[10]=“Permainan”;
x di memori setelah inisialisasi :
Karakter “” pada x [9] merupakan karakter null yang menandai
berakhirnya suatu string.
Perbedaan Char dan String :
Char ‘A’ berbeda dengan string “A”
Lihat perbedaanya pada penggambaran memori berikut:
Operasi string tidak dapat dilakukan untuk tipe data char.
2.
Array of String
a.
Array of String :
Karena string merupakan array dari char, maka array string adalah array
dua dimensi dari array char
Contoh : mendeklarasikan array yang menyimpan 30 nama, masing-masing
nama terdiri dari 25 karakter
#define jml_orang 30
#define pjg_nama 25
….
Char nama [jml_orang] [pjg_nama]
b.
Inisialisasi Array of String :
Inisialisasi array dari string dapat dilihat pada contoh berikut :
Char bulan[7] [10] = {“Senin”, “Selasa”, “Rabu”, “Kamis”, “Jumat”,
“Sabtu”, “Minggu”}
Array of String dengan printf dan scanf :
Printf dan scanf dapat menangani argumen string dengan menggunakan
format string %s
Contoh:
Printf(“Topik : %s\n”, string_var);
Secara default penulisan string menggunakan alignment rata kanan.
Untuk menuliskan string secara rata kiri (left justified) maka tuliskan
tanda minus (-) didepan s
Contoh :
printf (“%-20s\n”,presiden);
Scanf digunakan untuk pemasukan string (input of string)
Fungsi-Fungsi pada Librari String :
String.h merupakan librari yang menyimpan fungsi-fungsi yang digunakan
untuk menangani string ataupun substring.
3.
Fungsi-fungsi dalam librari
string.h antara lain : strcpy, strncpy, strcat, strncat, strcmp, strncmp,
strlen.
a.
Strcpy
Berfungsi untuk
menyalin (copying) suatu string asal ke variable string tujuan. Bentuk umumnya
: strcpy(var_tujuan, string_asal);
b.
Strncpy
Berfungsi untuk
menyalin (copying) suatu string asal ke variable string tujuan sebanyak n
karakter sesuai yang diinginkan programmer. Bentuk umumnya: strncpy(var_tujuan,
string_asal, n);. Dengan n adalah jumlah karakter yang ingin dipindahkan.
Cara menyalin substring
di tengah :
Misal :
Char s2[10]
Char s1[15] = “Mar. 15,
2008”
s2 bernilai berapa?
Strncpy (s2,s1,3) –>
s2 bernilai “Jan, “
Strncpy (s2,
&s1[5], 2) –> s2 bernilai “15”
c.
Strcat
Berfungsi untuk menambahkan
string sumber ke bagian akhir dari string tujuan. Bentuk umumnya:
strcat(tujuan, sumber);.
d.
Strncat
Berfungsi sama dengan
fungsi strcat, yaitu menambahkan string sumber ke bagian akhir dari string.
Yang membedakan adalah pada jumlah karakter yang dipindahkan. Fungsi ini dapat
memindahkan karakter sebanyak n karakter sesuai yang sudah diprogram oleh
programmer. Bentuk umumnya: strncat(tujuan, sumber, n);. Dengan n adalah jumlah
karakter yang ingin dipindahkan.
e.
Strcmp
Berfungsi untuk
membandingkan dua buah string. Hasil dari fungsi ini bertipe integer dengan
nilai:
1) negative, bila
string pertama kurang dari string kedua.
2) Nol, bila string
pertama sama dengan string kedua.
3) Positif, bila string
pertama lebih banyak dari string kedua.
Bentuk umumnya: strcmp(string1,
string2);
f.
Strncmp
Berfungsi untuk
membandingkan n karakter pertama dalam dua buah string. Hasil dari fungsi ini
sama dengan hasil dari fungsi strcmp. Bentuk umumnya:
Strncmp(string1,
string2, n);. Dengan n adalah jumlah karakter yang ingin dibandingkan.
g.
Strlen
Berfungsi untuk
memperoleh jumlah karakter dari suatu string. Bentuk umumnya: strlen(string);
4.
Operasi Karakter :
Fungsi
dari library ctype.h :
a.
Isalpha
Merupakan fungsi
operasi karakter dengan tolok ukur fungsi akan bernilai benar jika argumen
dalam syntax tersebut merupakan karakter yang berupa huruf dalam alphabet.
Bentuk umumnya: isalpha(char);.
b.
Isdigit
Merupakan fungsi
operasi karakter dengan tolok ukur syntax akan menghasilkan nilai benar (bukan
nol) bila karakter merupakan sebuah angka (digit) dari nol sampai sembilan.
Bentuk umum: isdigit(char);.
c.
Islower
Merupakan fungsi
operasi karakter dengan tolok ukur syntax ini bernilai benar (bukan nol) jika
karakter merupakan huruf kecil.
Bentuk umumnya:
islower(char);.
d.
Isupper
Merupakan fungsi
operasi karakter dengan tolok ukur fungsi ini akan menghasilkan nilai benar
(bukan nol) jika karakter merupakan huruf capital.
Bentuk umumnya:
isupper(char);.
e.
Ispunct
Merupakan fasilitas
yang ada dalam ctype.h yang berfungsi untuk memasukkan karakter yang berupa
tanda baca (punctuation), tidak termasuk didalamnya karakter spasi, huruf
alphabet, dan angka (digit).
Bentuk umumnya:
ispunct(char);.
f.
Isspace
Merupakan fasilitas
yang ada dalam ctype.h yang berfungsi pada karakter-karakter seperti spasi, newline
tab, dan tab. Contoh penggunaannya:
g.
Tolower
Fungsi ini akan merubah
huruf kapital menjadi huruf kecil.
Bentuk umum:
tolower(char);.
h.
Toupper
Fungsi ini akan merubah
huruf kecil menjadi huruf kapital.
Bentuk umum:
toupper(char).
Tidak ada komentar:
Posting Komentar