pengelolaan input user pada oerasi 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).
Comments
Post a Comment