Pengelolaan Input
User Pada Operasi String
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