TUGAS :
LOGIKA DAN ALGORITMA
KELAS :
171B33
KELOMPOK : 8
ANGGOTA :
ANDRI NUGRAHA (17150046)
ASEP SOPYAN KAMAL ( 17150041)
ASEP SOPYAN KAMAL ( 17150041)
ARTIKEL TENTANG FUNGSI TYPE DATA STRING di C++
1.
Pengertian String
String
merupakan bentuk data yang biasa dipakai dalam bahasa pemrograman
untuk
keperluan menampung dan memanipulasi data teks, misalnya untuk menampung
(menyimpan)
suatu kalimat. Pada bahasa C, string bukanlah merupakan tipe data
tersendiri,
melainkan hanyalah kumpulan dari nilai-nilai karakter yang berurutan dalam
bentuk array berdimensi satu.
2.
Fungsi-Fungsi Type data string
• Beberapa
fungsi untuk manipulasi string adalah sbb :
a. Fungsi strcpy()
untuk menyalin nilai string
b. Fungsi strlen()
untuk mengetahui panjang nilai string
c. Fungsi strcat()
untuk menggabung nilai string
d. Fungsi strcmp()
untuk membandingkan dua nilai string
e. Fungsi strchr()
untuk mencari nilai karakter dalam string
Berikut
ini akan dibahas beberapa fungsi pustaka yang umumnya disediakan oleh kompiler
C untuk mengoperasikan suatu nilai string. Fungsi-fungsi pustaka untuk operasi
string, prototype-prototype nya berada di file judul string.h. Beberapa
di antara fungsi pustaka untuk operasi string akan dibahas di bawah ini.
a. Fungsi strcpy()
untuk Menyalin Nilai String
Bentuk pemakaian :
#include
<string.h>
strcpy(tujuan,
asal)
Fungsi
ini dipakai untuk menyalin string asal
ke variabel string tujuan termasuk karakter '\0'. Keluaran dari fungsi ini (return value) adalah
string tujuan. Dalam hal ini, variabel tujuan
haruslah mempunyai ukuran yang dapat
digunakan untuk menampung seluruh
karakter dari string asal. Contoh implementasinya bisa dilihat pada program salinstr2.c di bawah ini.
/*
File program :salinstr2.c
Contoh
menyalin isi str2 ke str1 */
#include
<stdio.h>
#include
<string.h>
#define
MAKS 80
main()
{
char
str1[MAKS];
char
str2[]="ABCDE";
strcpy(str1,
str2); /* menyalin isi str2 ke str1 */
printf("String
pertama adalah : %s\n", str1);
printf("String
kedua adalah : %s\n", str2);
}
Contoh eksekusi :
String
pertama adalah : ABCDE
String
kedua adalah : ABCDE
b. Fungsi strlen() untuk Mengetahui Panjang Nilai String
Bentuk pemakaian :
#include <string.h>
strlen(var_string);
Fungsi
ini digunakan untuk memperoleh banyaknya karakter di dalam string yang
menjadi
argumennya (var_string). Keluaran dari fungsi ini adalah panjang dari
var_string.
Karakter NULL tidak ikut dihitung. Contoh implementasinya bisa dilihat pada
program
panjangstr.c di bawah ini.
/*
File program : panjangstr.c
Contoh
memperoleh panjang suatu string */
#include
<stdio.h>
#include
<string.h>
main()
{
char
salam[] = "Halo";
printf("Panjang
string = %d karakter\n", strlen(salam));
}
Contoh eksekusi :
Panjang
string = 4 karakter
c. Fungsi strcat()
untuk Menggabung Nilai String
Bentuk pemakaian :
#include
<string.h>
strcat(tujuan,
sumber);
Menggabungkan
dua buah nilai string tidak dapat dilakukan dengan operator ‘+’,
karena
operator ini bukan operator untuk operasi string. Penggabungan dua buah nilai
string
dapat dilakukan dengan fungsi pustaka strcat()
dengan menambahkan string sumber
ke
bagian akhir dari string tujuan. Keluaran dari fungsi ini adalah string tujuan.
Contoh
implementasinya
bisa dilihat pada program gabungstr.c
di bawah ini.
/*
File program :gabungstr.c
Contoh
menggabungkan isi string1 dengan string2 */
#include
<stdio.h>
#include
<string.h>
#define
PJG 15
main()
{
char
str1[PJG], str2[PJG];
strcpy(str1,
“sala”); /* str1 diisi “sala” */
strcpy(str2,
“tiga”); /* str2 diisi “tiga” */
strcat(str1,
str2); /* tambahkan str2 ke akhir str1 */
printf(“str1 > %s str2 > %s\n”, str1, str2);
}
Contoh eksekusi :
str1 > salatiga str2 > tiga
d. Fungsi strcmp()
untuk Membandingkan Dua Nilai
String
Membandingkan dua nilai string juga tidak dapat digunakan dengan
operator
hubungan,
karena operator tersebut tidak untuk operasi string. Membandingkan dua buah
nilai
string dapat dilakukan dengan fungsi pustaka strcmp().
Contoh bentuk pemakaian fungsi :
#include
<string.h>
strcmp(str1,
str2);
Fungsi
ini dipakai untuk membandingkan string str1
dengan string str2. Keluaran
dari
fungsi ini bertipe int yang berupa nilai :
-1,
jika str1 kurang dari str2
0,
jika str1 sama dengan str2
1,
jika str1 lebih dari str2
Pembandingan
dilakukan untuk karakter pada posisi yang sama dari str1 dan str2,
dimulai
dari karakter terkiri. Acuan pembandingan dari dua buah karakter didasarkan
oleh
nilai
ASCII-nya. Misal, karakter ‘A’ lebih kecil daripada ‘B’ dan karakter ‘B lebih
kecil
daripada
‘C’. Contoh implementasinya bisa dilihat pada program bandingstr.c di
bawah
ini
/*
File program :bandingstr.c
Contoh
membandingkan isi dua buah string */
#include
<stdio.h>
#include
<string.h>
main()
{
char
str1[]="HALO”;
char
str2[]="Halo";
char
str3[]="HALO”;
printf(“Hasil
pembandingan %s dengan %s --> %d\n”,
str1,
str2, strcmp(str1, str2));
printf(“Hasil
pembandingan %s dengan %s --> %d\n”,
str2,
str1, strcmp(str2, str1));
printf(“Hasil
pembandingan %s dengan %s --> %d\n”,
str1,
str3, strcmp(str1, str3));
}
Contoh eksekusi :
Hasil
pembandingan HALO dengan Halo --> -1
Hasil
pembandingan Halo dengan HALO --> 1
Hasil
pembandingan HALO dengan HALO --> 0
e. Fungsi strchr()
untuk Mencari Nilai Karakter dalam
String
Bentuk
pemakaian :
#include
<string.h>
strchr(var_string,
kar);
Fungsi
ini dapat digunakan untuk mencari suatu nilai karakter yang berada dalam
suatu
nilai string. Dalam hal ini adalah mencari karakter kar dalam string var_string.
Keluaran
dari fungsi ini adalah alamat posisi dari karakter pertama pada nilai string,
yang
sama
dengan karakter yang dicari. Jika karakter yang dicari tidak ada dalam nilai
string,
maka
fungsi ini akan memberikan hasil nilai pointer kosong (null).
Contoh
implementasinya
bisa dilihat pada program carikar.c
di bawah ini.
/*
File program : carikar.c
Contoh
mencari karakter dalam sebuah string */
#include
<stdio.h>
#include
<string.h>
main()
{
char
str[]="ABcde”; /* inisialisasi string */
char
*hasil1,*hasil2;
/*
var bertipe pointer to char, agar bisa ditampilkan isi
dari
alamat yang ditunjuk oleh hasil1 & hasil2 */
hasil1
= strchr(str, ‘B’);
hasil2
= strchr(str, ‘X’);
printf(“Dari
string ABcde\n”);
printf(“Mencari
karakter B = %s\n”, hasil1);
printf(“Mencari
karakter X = %s\n”, hasil2);
}
Contoh eksekusi :
Dari
string ABcde
Mencari
karakter B = Bcde
Mencari
karakter X = (null)
Tidak ada komentar:
Posting Komentar