Mengenal Tipe Data String pada Bahasa C
Kita mungkin sudah sering menggunakan String, namun tidak sadar aja itu adalah string.
Pada bahasa pemrograman C, String memang tidak termasuk dalam tipe data dasar.
Nah pada tutorial kali ini, kita akan membahas tentang string lebih dalam dan fungsi-fungsi apa saja yang bisa dipakai untuk memanipulasinya.
Ini penting!
karena kita pasti akan menggunakan string dalam membuat program.
Siap?
Mari kita mulai…
Apa itu String?
Pada bahasa pemrograman lain, kita mungkin mengenal String sebagai tipe data untuk teks.
Tapi pada bahasa C:
String pada adalah sebuah array satu dimensi yang berisi kumpulan dari huruf atau karakter dan diakhiri dengan karakterk kosong \0
(null).
Bahasa pemrograman C memang tidak memiliki tipe data string, tapi kita tetap bisa membuat string dengan tipe data char
.
Contoh:
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
Contoh ini bisa juga kita tulis seperti ini:
char greeting[] = "Hello";
Ngomong-ngomgong…
Mengapa String di C harus diakhiri dengan karakter kosong \0
?
Dimulai dari bahasa assembly, kemudian BCPL atau B, lalu jadilah bahasa C.
Karena itu, C masih mengadopsi desain atau rancangan dari bahasa sebelumnya yang mengharuskan string untuk diakhiri dengan karakter kosong.
Selain itu, ini juga akan memudahkan dalam menghitung panjang string dan alokasi memori untuk string.
Karena saat itu memori komputer sangat terbatas.
Jadi, meskipun kita membuat string seperti ini:
char greeting[] = "Hello";
Dia akan tetap ditambahkan karakter \0
di belakangnya.
Fungsi-fungsi untuk Manipulasi String
Ada beberapa fungsi yang bisa kita gunakan untuk memanipulasi string sesui dengan kebutuhan.
Berikut ini fungsi-funginya:
1. Fungsi strcpy()
Fungsi strcpy()
digunakan untuk meng-copy string dari sebuah variabel ke variabel yang lainnya.
Contoh:
#include <stdio.h>
void main(){
char title[] = "Belajar Bahasa C";
char title_copy[20];
// copy string title ke title_copy
strcpy(title_copy, title);
// maka sekarang title_copy akan berisi:
printf("isi title_copy: %s\n", title_copy);
}
Hasilnya:
2. Fungsi strcat()
Fungsi strcat()
digunakan untuk menambahkan string dari belakang.
Contoh:
#include <stdio.h>
void main(){
char nama[] = "Ahmad Muhardian";
char gelar[] = ", S.Kom";
// Menggabungkan string
strcat(nama, gelar);
printf("Nama lengkap: %s\n", nama);
}
Hasilnya:
3. Fungsi strlen()
Fungsi strlen()
digunakan untuk menghitung panjang string.
Contoh:
#include <stdio.h>
void main(){
char nama[] = "Ahmad Muhardian";
int panjang_nama;
// menghitung panjang nama
panjang_nama = strlen(nama);
printf("Nama: %s\n", nama);
printf("Panajang: %d karakter\n", panjang_nama);
}
Hasilnya:
4. Fungsi strcmp()
Fungsi strcmp()
digunakan untuk membandingkan string dengan string yang lainnya.
Fungsi strcamp()
akan menghasilkan nilai 0
apabila kedua string yang dibandingkan sama. Tapi kalau berbeda akan menghasilkan angka yang berbeda-beda.
Contoh:
#include <stdio.h>
void main(){
char str1[] = "Petani";
char str2[] = "Kode";
int hasil;
// membandingkan string
hasil = strcmp(str1, str2);
if(hasil == 0){
printf("str1 dan str2 sama");
} else {
printf("str1 dan str2 berbeda");
}
}
Hasilnya:
5. Fungsi strchr()
Fungsi strchr()
digunakan untuk mencari sebuah karakter di dalam string.
Contoh:
#include <stdio.h>
void main(){
char nama[] = "Petani Kode";
char huruf = 'e';
char* hasil;
printf("Mencari huruf '%c' dalam nama...\n", huruf);
// mencari huruf
hasil = strchr(nama, huruf);
while(hasil != NULL){
printf("Ditemukan pada huruf ke-%d\n", hasil - nama+1);
hasil = strchr(hasil+1, huruf);
}
}
6. Fungsi strstr()
Fungsi strstr()
digunakan untuk mencari sebuah teks (string) di dalam string.
Biasanya fungsi ini dipadukan dengan fungsi strncpy()
untuk mencari dan mengubah isi teks.
Contoh:
#include <stdio.h>
void main(){
char str[] ="Petani code!";
char * hasil;
// cari kata "code"
hasil = strstr(str,"code");
// lalu ubah kata "code" menjad "kode"
strncpy (hasil, "kode", 4);
puts(str);
}
Hasilnya:
Semoga bermanfaat👋
Terimakasih sgt bermafaat💜
BalasHapussama sama🖤
HapusMakasih, infonya sangat bermanfaat
BalasHapusterimakasih🙏🏻
HapusNice info
BalasHapusterimakasiii👉🏻👈🏻
HapusThanks sgt bermanfaat
BalasHapusMantap infony
BalasHapusterimakasihh vin🙏🏻
Hapussangat menarik
BalasHapusterimakasii kallkal
HapusSangat bermanfaat
BalasHapusalhamdulillah makasi🙏🏻
HapusMakasih, postingan sangat menarik.
BalasHapusteerimakasih🙏🏻
HapusSangat bermanfaat👌
BalasHapusterimakasih🙏🏻
HapusGood job
BalasHapusmakasih🙏🏻
HapusSangat membantu
BalasHapusalhamdulillah
HapusGood
BalasHapusgoodjob🤪
HapusSangat membantu terimakasih
BalasHapusalhamdulillah terimakasih🙏🏻
HapusTerima kasihh, sangat bermanfaat
BalasHapusejak tengkyu🙏🏻
HapusTerimakasih kasih sangat membantu
BalasHapusalhamdulillah sama sama
HapusSangat bermanfaat
BalasHapusmakasih kak🙏🏻
HapusLuar biasa intonya
BalasHapusmantap terimakasii kak
HapusSangat membantu
BalasHapusalhamdulillah terimakasih
HapusTerima kasih , sngt membatu
BalasHapussama sama piki🖤
Hapussangat bermanfaat
BalasHapushihihi terimakasih
HapusSangat berfaedah
BalasHapusalhamdulillah kl begitu kak terimakasih👉🏻👈🏻
HapusKerennnn, informasi yang sangat bermanfaat 👍🏻👍🏻👍🏻
BalasHapusterimakasih❤
HapusBermanfaat banget, thank uu🤍
BalasHapusaa terimakasi❤
HapusBermanfaat skali
BalasHapusalhamdulillah terimakasih🙏🏻
HapusKeren
BalasHapusterimakasih
HapusMembantu sekali
BalasHapusKeren suka banget
BalasHapusterimakasiih yey
HapusDebest ainna
BalasHapusmakasihh ya
HapusTerimakasih sangat membantu
BalasHapusalhamdulillah terimakasih
Hapussangat bermanfaat
BalasHapusalhamdulillah kalo gitu
Hapuskerenn
BalasHapusmakasihh yaa
Hapuskhansa hebat
BalasHapusaamiin terimakasih
Hapussukses kak
BalasHapusaamiin yaallah makasih
Hapusbaguss sekali
BalasHapuswah terimakasih
Hapusterimakasih🙏🏻
BalasHapusSangat bermanfaat
BalasHapusterimakasihh
HapusBaguslah
BalasHapusmakasiihh
HapusInfony Bagus
BalasHapusalhamdulillah makasih
HapusLanjutin lagi ainna
BalasHapusoke lanjut san, makasih
Hapussangat bermanfaat
BalasHapusterimakasih ros
Hapusbermanfaat sekali, terimakasii
BalasHapusalhamdulillah terimakasiiiiii
Hapusbagus
BalasHapusterimakasih🙏🏻
Hapussangat bermanfaat
BalasHapusalhamdulillah makasih
Hapusalhamdulillah makasih
BalasHapus