Membandingkan String dengan strcmp() dan strncmp() - nblognlife

Membandingkan String dengan strcmp() dan strncmp()

Contoh Program strcmp() dan strncmp() C++


     Bahasa pemrograman C++ mempunyai fungsi yang bisa kita gunakan untuk membandingkan dua buah string, fungsi tersebut adalah strcmp() dan strncmp().

Bedanya :
strcmp()    -> digunakan untuk membandingkan nilai ASCII semua karakter yang ada pada string
strncmp() -> digunakan untuk membandingkan nilai ASCII sejumlah n karakter awal yang ada pada string  

Bentuk Penulisan :
strcmp()   -> strcmp(string1, string2)
strncmp() -> strncmp(string1, string2, n karakter)

Nilai Balik :
-1 -> jika nilai ASCII string1 lebih kecil dari string2
0  -> jika nilai ASCII string1 sama dengan string2
1  -> jika nilai ASCII string1 lebih besar dari string2

Misalkan : nilai ASCII “a” adalah 97, sedangkan nilai  ASCII “A” adalah 65, sehingga saat dibandingkan dengan strcmp atau strcmp (“a”,”A”) maka akan menghasilkan nilai balik 1.

Tentang ASCII bisa baca disini -> ASCII (Wikipedia Indonesia)

 Berikut ini program C++ yang menggunakan fungsi strcmp() dan strncmp() :
/*
      Membandingkan string dengan strcmp() dan strncmp()
      Compiler :  Microsoft Visual Studio 2012
*/
#include <iostream>
using namespace std;
#include <conio.h>
#include <string.h>

int main()
{
      char nama1 [20] ="N.N. BLOG";
      char nama2 [20] ="N.N. blog";

      cout<<"String 1 : "<<nama1<<endl;
      cout<<"String 2 : "<<nama2<<endl;
      cout<<endl<<endl;

      //penggunaan strcmp()
      cout<<"Penggunaan strcmp()"<<endl;
      cout<<"-------------------"<<endl;
      if(strcmp(nama1, nama2) == 0)
            cout<<"Kedua string bernilai sama\n"<<endl;
      else
            cout<<"Kedua string bernilai beda\n"<<endl;

      //membandingkan 6 karakter awal strncmp()
      cout<<"Penggunaan strncmp() pada 4 karakter awal"<<endl;
      cout<<"-----------------------------------------"<<endl;
      if(strncmp(nama1, nama2, 4) == 0)
            cout<<"Kedua string bernilai sama\n"<<endl;
      else
            cout<<"Kedua string bernilai beda\n"<<endl;

      //membandingkan 10 karakter awal strncmp()
      cout<<"Penggunaan strncmp() pada 6 karakter awal"<<endl;
      cout<<"------------------------------------------"<<endl;
      if(strncmp(nama1, nama2, 6) == 0)
            cout<<"Kedua string bernilai sama\n"<<endl;
      else
            cout<<"Kedua string bernilai beda\n"<<endl;

      _getche();
      return EXIT_SUCCESS;
}

Output
String 1 : N.N. BLOG
String 2 : N.N. blog


Penggunaan strcmp()
-------------------
Kedua string bernilai beda

Penggunaan strncmp() pada 4 karakter awal
-----------------------------------------
Kedua string bernilai sama

Penggunaan strncmp() pada 6 karakter awal
------------------------------------------
Kedua string bernilai beda


Itu tadi bahasan tentang strcmp() dan strncmp(). Semoga bisa menambah pengetahuan.


Baca juga fungsi string C++ lainnya:

[RS]

Klik Like & Share jika postingan ini bermanfaat
Apa tanggapan Anda?

Berikan tanggapan Anda melalui kolom komentar yang telah disediakan.
- Gunakan bahasa yang sopan;
- Saat menjadikan postingan pada blog ini sebagai referensi, jangan lupa mencantumkan sumbernya (link dari blog ini).

Jika blog ini bermanfaat jangan lupa memberikan 'like' atau 'share' untuk mendapatkan update terbaru.

Terima kasih