Secara umum string merupakan tipe data untuk menyimpan teks. String dapat digunakan untuk menampilkan teks pada LCD atau jendela Serial Monitor Arduino IDE. String juga berguna untuk penyimpanan masukan dari pengguna, seperti karakter yang diketik pengguna melalui keypad yang terhubung ke Arduino.
Terdapat dua jenis string dalam pemrograman Arduino, yaitu :
- Array Karakter (Arrays of characters), yang sama dengan string yang digunakan dalam bahasa C
- String Arduino, yang memungkinkan pengguna menggunakan objek string dalam sketch.
Array Karakter
Array Karakter merupakan string yang berisi sekupulan/seri karakter dari tipe char. Array merupakan seri berturut-turut dari jenis variabel yang sama yang disimpan dalam memori. Dengan demikian String merupakan array variabel char. Array karakter memiliki satu elemen tambahan di akhir string, yang selalu memiliki nilai 0 (nol), yang dikenal dengan sebutan “null terminated string“.
Contoh berikut menunjukkan cara membuat string. Dalam contoh berikut terdapat Array karakter dengan karakter yang dapat dicetak dan 0 sebagai elemen terakhir array untuk menunjukkan bahwa ini adalah tempat berakhirnya string. String dapat dicetak ke jendela Serial Monitor Arduino IDE dengan menggunakan Serial.println ().
void setup() {
char my_str[5]; // sebuah array untuk string 4 karakter
Serial.begin(9600);
my_str[0] = 'H'; // string terdiri dari 4 karakter
my_str[1] = 'a';
my_str[2] = 'l';
my_str[3] = 'o';
my_str[4] = 0; // elemen aray ke-5 merupakan null terminator
Serial.println(my_str);
}
void loop() {
}
Contoh yang sama dengan ini dapat ditulis dengan cara yang lebih nyaman seperti yang ditunjukkan di bawah ini
void setup() {
char my_str[] = "Halo";
Serial.begin(9600);
Serial.println(my_str);
}
void loop() {
}
Dalam sketch ini, kompiler menghitung ukuran array string dan terminator null mengakhiri string dengan nol secara otomatis. Array yang panjangnya lima elemen dan terdiri dari empat karakter diikuti dengan nol dibuat dengan cara yang persis sama seperti pada sketch sebelumnya.
Memanipulasi Array Karakter
Kita dapat mengubah array karakter (string) dalam program seperti yang ditunjukkan pada sketch berikut.
void setup() {
char like[] = "saya suka kopi dan roti"; // membuat string
Serial.begin(9600);
// (1) mencetak string
Serial.println(like);
// (2) menghapus bagian dari string
like[14] = 0;
Serial.println(like);
// (3) mengganti kata ke dalam string
like[14] = ' '; // mengganti null terminator dengan spasi
like[19] = 't'; // menyisipkan kata baru
like[20] = 'e';
like[21] = 'h';
like[22] = 0; // mengakhiri string
Serial.println(like);
}
void loop() {
}
Hasil
saya suka kopi dan roti
saya suka kopi
saya suka kopi dan teh