C++ Char Array Compare

3 min read Jul 01, 2024
C++ Char Array Compare

Membandingkan Array Karakter di C++

Dalam C++, array karakter (char array) digunakan untuk menyimpan string. Kadang-kadang kita perlu membandingkan dua string untuk melihat apakah mereka sama atau tidak. Artikel ini akan membahas berbagai cara membandingkan array karakter di C++.

Menggunakan strcmp()

Fungsi strcmp() adalah metode standar dalam C++ untuk membandingkan dua string. Fungsi ini mengembalikan nilai integer yang menunjukkan hasil perbandingan:

  • 0: Kedua string sama.
  • Nilai positif: String pertama lebih besar daripada string kedua secara leksikografis.
  • Nilai negatif: String pertama lebih kecil daripada string kedua secara leksikografis.

Berikut contoh kode penggunaan strcmp():

#include 
#include 

using namespace std;

int main() {
  char str1[] = "Hello";
  char str2[] = "World";
  char str3[] = "Hello";

  int result1 = strcmp(str1, str2);
  int result2 = strcmp(str1, str3);

  cout << "strcmp(str1, str2): " << result1 << endl;
  cout << "strcmp(str1, str3): " << result2 << endl;

  return 0;
}

Kode di atas akan menghasilkan output:

strcmp(str1, str2): -1
strcmp(str1, str3): 0

Menggunakan Perulangan

Kita juga bisa membandingkan array karakter secara manual menggunakan perulangan. Logika perbandingan adalah dengan memeriksa setiap karakter di kedua string, dan menghentikan perulangan jika ditemukan perbedaan atau akhir dari string tercapai.

#include 

using namespace std;

int main() {
  char str1[] = "Hello";
  char str2[] = "World";
  char str3[] = "Hello";

  bool areEqual = true;

  for (int i = 0; str1[i] != '\0' && str2[i] != '\0'; ++i) {
    if (str1[i] != str2[i]) {
      areEqual = false;
      break;
    }
  }

  if (areEqual) {
    cout << "str1 dan str2 sama" << endl;
  } else {
    cout << "str1 dan str2 berbeda" << endl;
  }

  areEqual = true;
  for (int i = 0; str1[i] != '\0' && str3[i] != '\0'; ++i) {
    if (str1[i] != str3[i]) {
      areEqual = false;
      break;
    }
  }

  if (areEqual) {
    cout << "str1 dan str3 sama" << endl;
  } else {
    cout << "str1 dan str3 berbeda" << endl;
  }

  return 0;
}

Kode di atas akan menghasilkan output yang sama dengan contoh kode strcmp().

Memilih Metode

strcmp() adalah metode yang lebih efisien dan mudah digunakan untuk membandingkan array karakter. Namun, jika anda perlu mengontrol proses perbandingan secara lebih detail, Anda dapat menggunakan metode perulangan.

Kesimpulan

Artikel ini membahas dua metode membandingkan array karakter di C++: menggunakan fungsi strcmp() dan dengan perulangan. Pilih metode yang sesuai dengan kebutuhan Anda.

Latest Posts