Mengakses Substring dalam C++ Char Array
Dalam pemrograman C++, char array sering digunakan untuk menyimpan string. Namun, terkadang kita perlu mengakses bagian tertentu dari string tersebut, yang dikenal sebagai substring. Berikut ini beberapa cara untuk mengakses substring dalam char array di C++:
1. Menggunakan Pointer
Metode ini memungkinkan kita untuk mengambil substring dengan menunjuk ke karakter awal dan akhir dari substring yang ingin kita ekstrak.
#include
#include
using namespace std;
int main() {
char str[] = "Hello World!";
char *start = str + 6; // Menunjuk ke karakter 'W'
char *end = str + 11; // Menunjuk ke karakter 'd'
// Mencetak substring dari 'W' hingga 'd'
for (char *ptr = start; ptr <= end; ptr++) {
cout << *ptr;
}
cout << endl;
return 0;
}
Kode ini akan mencetak: "World"
2. Menggunakan strncpy()
Fungsi strncpy()
menyalin sejumlah karakter tertentu dari satu string ke string lainnya. Fungsi ini dapat digunakan untuk mengambil substring dari char array.
#include
#include
using namespace std;
int main() {
char str[] = "Hello World!";
char subStr[10];
// Mengambil substring "World"
strncpy(subStr, str + 6, 5);
subStr[5] = '\0'; // Menambahkan null terminator
cout << subStr << endl;
return 0;
}
Kode ini akan mencetak: "World"
3. Menggunakan substr()
(String Class)
Untuk menggunakan fungsi substr()
, kita perlu mengubah char array menjadi objek string menggunakan std::string
. Kemudian, kita dapat menggunakan substr()
untuk mengambil substring.
#include
#include
using namespace std;
int main() {
char str[] = "Hello World!";
string strObj(str);
// Mengambil substring "World"
string subStr = strObj.substr(6, 5);
cout << subStr << endl;
return 0;
}
Kode ini akan mencetak: "World"
Perbedaan Metode
- Pointer: Metode ini paling fleksibel dan memungkinkan kita untuk menentukan secara tepat karakter awal dan akhir dari substring.
strncpy()
: Metode ini lebih ringkas untuk menyalin substring ke char array baru.substr()
: Metode ini lebih mudah digunakan dan menyediakan fungsionalitas tambahan seperti menentukan panjang substring.
Pilih metode yang paling sesuai dengan kebutuhan Anda.