String dan String Function
Tipe data string juga sering digunakan dalam suatu program begitu juga bahasa c. Walau bahasa ini bahasa tingkat rendah, bahasa ini juga bisa memakai data tipe string. Hanya saja dalam penggunaanya data tersebut menjadi array yang akan otomatis menambahkan diakhir karakter NULL yakni \0. Seperti dalam pendeklarasian :char str[6] = "hallo";
char str[6] ={'h','a','l','l','o','\0'};
char str[] ={'h','a','l','l','o','\0'};
Pendeklarasian string sebaiknya memiliki nilai lebih dari 2 karakter dari yang dibutuhkan. Untuk mempermudah pengolahan data dalam bentuk string kita bisa menggunakan pustaka string.h. Fungsi-fungsi pada pustaka string.h yakni:
strlen() - menemukan jumlah huruf
strcat() - menggabungkan dua string
strcpy() - menyalin satu string ke yang lainya
strlwr() - mengubah string ke huruf kecil
strupr() - mengubah string ke huruf kapital
strrev() - membolak-balik string
strcmp() - membandingkan dua string
Berikut ini contoh penggunaan dalam applikasi bandingKata.c
#include <stdio.h>
#include <string.h>
int main(){
char a[6], b[6];
int banding;
printf("masukan nilai variabel a \n");
gets(a);
//lebih aman pake fgets
//fgets(a, 6, stdin);
printf("masukan nilai variabel b \n");
gets(b);
//lebih aman pake fgets
//fgets(b, 6, stdin);
banding =strcmp(a, b);
if(banding == 0){
printf("sama \n");
}else{
printf("tidak sama \n");
}
return 0;
}
Aplikasi diatas menggunakan function strcmp() yang akan mengembalikan nilai 0 atau true jika benar. Selanjutnya mencetak kata sama bila kata tersebut sama. Kamu bisa mengubah jumlah kata yang ingin dibandingkan sesuai dengan keinginan pada baris ke 4.
String juga bisa menggunakan function sprintf dan sscanf. Dengan contoh penggunaan dalam file string1.c dan string2.c ini:
#include <stdio.h>
int main(){
char info[] = "SMK 500 38";
char tempat[50];
int murid, guru;
sscanf(info, "%s %d %d", tempat, &murid, &guru);
printf("Di %s terdapat %d siswa dan %d tenaga pengajar", tempat, murid, guru);
return 0;
}
Ini akan menampilkan data yang dimasukan pada variabel info. Berikutnya yakni file string2.c :
#include <stdio.h>
int main(){
char info[100];
char namaDepan[] = "Abdurrahman";
char namaBelakang[] = "Umar";
int pendapatan = 500000;
sprintf(info, "%s %s memiliki pendapatan Rp.%d perhari", namaDepan, namaBelakang, pendapatan);
printf("%s \n", info);
return 0;
}
atoi, atof, atol, strtol function
atoi funtion digunakan untuk mengubah tipe data string(huruf) menjadi integer(angka). Format penggunaanya yakni int atoi(str) dan dibawah ini merupakan contoh sederhananya. Sedangkan atof mengubah tipe string menjadi float, function atol mengubah string menjadi long integer dan function strtol mengubah string menjadi long integer. Berikut ini adalah file hurufAngka.c yang menerapkan function atoi, atof dan atol.
#include <stdio.h>
#include <stdlib.h>
int main(){
char masukan[10];
int angka;
float angka2;
long int angka3;
printf("Masukan angka yang kamu mau:\n");
scanf("%s", masukan);
angka = atoi(masukan);
printf("Kamu memasukan angka %d \n", angka);
angka2 = atof(masukan);
printf("Kamu memasukan angka %f \n", angka2);
angka3 = atol(masukan);
printf("Kamu memasukan angka %ld \n", angka3);
return 0;
}
Tidak ada komentar:
Posting Komentar