1. String merupakan array of character yang diakhiri karakter NULL. Untuk menyimpan n karakter dibutuhkan array sebesar n+1.
2. Ada berbagai fungsi untuk mengolah string seperti strlen(), strcpy(), strcat(), dan strcmp(). String dapat dipasukkan dan dikeluarkan menggunakan cin dan cout.
3. String dapat digunakan sebagai parameter fungsi sama seperti array.
1. 1
STRING :
String merupakan array of character.
Indeks dimulai dari 0.
Diakhiri dengan karakter ‘0’ (NULL String).
Untuk menyimpan n buah karakter dibutuhkan deklarasi
array sebesar n+1.
C/C++ dilengkapi dengan kepustakaan (library) yang
lengkap
untuk mengakses string (digunakan header file: <string.h> ), seperti
strlen(), strcpy(), strcat(), strcmp(), strchr(), dll.
Deklarasi :
char name[31];
char Kode_Kuliah[5] = “IF454”;
char Kota[3]= { “Jakarta”, “Bandung”,“Surabaya” };
char Mata_Kuliah[ ] = “PBO”;
char Barang = Meja; // salah
char Bentuk[2][10] = “Kotak”, “Bulat”; // salah
char Nim[11] = { 0400097001 }; // salah
2. 2
Memasukkan data String dari Keyboard
Pemasukkan data dapat dilakukan dengan perintah cin
Contoh
#include <iostream.h>
#include <conio.h>
Void main()
{
char huruf[13];
clrscr();
cout<<"Masukkan Sebuah Kata = ";
cin(huruf);
cout<<“Yang anda inputkan = “<<huruf<<endl;
}
3. Cin hanya bisa membaca masukan hingga terdapat spasi, tab atau enter.
Penggunaan cin.get() hanya di lakuka 1 kali. Program tidak memberikan kesempatan
pemakaian Cin.get() untuk pemakaian ke dua, ini di sebabkan get yang pertama tidak
membuang kode newline(n) dan get tidak menabaikan spasi, tab atau newline
sehingga get() kedua tidak berfungsi sebagaimana mestinya.
#include <iostream.h>
#include <conio.h>
Void main()
{
char nama[25];
char alamat[35];
clrscr();
cout<<"Nama Anda= ";
cin.get(nama, sizeof(nama));
cout<<“Alamat = ";
cin.get(alamat, sizeof(alamat));
cout<<“Nama= “<<nama<<endl;
cout<<“Alamat= “<<alamat<<endl;
}
3
4. Menghitung Jumlah Karakter
Jika kita inginmenghitung jumlah karakter di dalam suatu pemrograman biasanya kita
menggunakan pernyataan sbb;
Jumlah = 0;
For(int i=0; teks[i]; i++)
jumlah++;
Yang akan menghasilkan jumlah jumlah karakter yang terdapat dalam teks tetapi dapat
di ganti dengan menggunakan cin.gcount().
#include <iostream.h>
#include <conio.h>
Void main()
{
char huruf[128];
Int jumlah;
clrscr();
cout<<"Masukkan String apa saja= "; <<endl;
Cin.getline(huruf, sizeof(huruf));
Jumlah = 0;
For(int i=0; huruf[i]; i++)
jumlah++;
cout<<“jumlah karakter= “<<jumlah<<endl;
}
4
5. Operasi String
Fungsi strcpy()
Fungsi ini digunakan untuk menyalin di dalam string. File header yang harus
disertakan adalah : string.h
Kita tidak dapat memberikan pernyataan teks2=teks1;
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char teks[] = “C++ Oke”
char data[25];
clrscr();
Strcpy(data, teks);
cout<<“isis data:”<<data<<endl;
}
5
6. Fungsi strlen()
Fungsi ini digunakan untuk memperoleh banyaknya karakter dalam string. File
header yang harus disertakan adalah : string.h
Bentuk Penulisan : strlen(str);
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char huruf[20];
char pindah[20];
clrscr();
cout<<"Masukkan Sembarang Kata = ";
gets(huruf);
cout<<"Panjang Kata Yang Diinputkan = ";
cout<<strlen(huruf);
getch();
}
6
Operasi String
7. Fungsi strrev()
Penjelasan Fungsi ini digunakan untuk membalik letak urutan pada string. String
urutan paling akhir dipindahkan keurutan paling depan dan seterusnya. File header
yang harus disertakan adalah : string.h
Bentuk Penulisan : strrev(str);
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata = ";
gets(kata);
strrev(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
7
Operasi String
8. Fungsi Strlwr()
Fungsi ini digunakan untuk mengubah setiap huruf kapital (huruf besar ) dalam string
menjadi huruf kecil.
File header yang harus disertakan adalah : string.h
Bentuk Penulisan : strlwr(str);
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata dengan Huruf Besar ="; gets(kata); strlwr(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
8
Operasi String
9. Operasi String
Fungsi strupr()
Fungsi ini digunakan untuk mengubah setiap huruf kecil dalam string menjadi huruf
kapital ( huruf besar ).
File header yang harus disertakan adalah : string.h
Bentuk Penulisan : strupr(str);
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata dengan Huruf Kecil=";
gets(kata);
strupr(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
9
10. Operasi String
Fungsi strcat()
Fungsi ini digunakan untuk menambahkan string sumber kebagian akhir dari string
tujuan.
File header yang harus disertakan adalah : string.h dan ctype.h
Bentuk Penulisan : strcat(tujuan, sumber);
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
#include <iostream.h>
main()
{
char st[128] = “satu dua”;
clrscr();
cout<<“Isi St semula= “<<st<<endl;
Strcat(st, “tiga empat lima”);
cout<<“Isi st sekarang= “<<st<<endl;
}
10
11. Operasi String
Str cmp()
Fungsi ini digunakan untuk membandingkan dua buah string.
File header yang harus disertakan adalah : string.h
#include <conio.h>
#include <string.h>
#include <iostream.h>
main()
{
char st[128];
Char cpp[] = “C++”;
clrscr();
cout<<“Masukkan sembarang string= “<<endl;
Cin.getline(st, sizeof(st));
Int hasil = strcmp(st,cpp);
If (hasil == 0)
cout<<st<<“== “<<cpp<<endl;
Else If (hasil < 0)
cout<<st<<“< “<<cpp<<endl;
Else
cout<<st<<“> “<<cpp<<endl;
}
11
12. String sebagai Parameter Fungsi
String sebagai parameter fungsi pada dasarnya sama dengan array sebagai parameter
fungsi. Sebagai contoh dapat di perlihatkan pada program di bawah ini :
#include <conio.h>
#include <string.h>
#include <iostream.h>
Void strkiri(char hasil[], char st[], int n);
Void main()
{
char teks[] = “ Bahasa C++”;
Char hasil[128] ;
clrscr();
Int panjang = strlen(teks);
For (int i=0; i<panjang; i++)
{
strkiri(hasil, teks, i+1);
cout<<hasil<<endl;
}
}
Void strkiri(char hasil[], char st[], int n)
{
for (int I = 0; i<n; I++)
hasil[i] = st[i];
hasil[i] = ‘0’;
}
12