Tipe Data Character | Berguru Struktur Data C & C++
Tipe Data Character | Belajar Struktur Data C & C++ |
Tipe Data Character dibedakan menjadi 2 yaitu :
- Signed Char
Signed Char yakni tipe data character yang nilainya berkisar antara -128 sampai 127. Ingat tipe data character selalu mempunyai 255 kemungkinan (karena 1 byte berisi 8 bit, dan 8 bit dikombinasi menghasilkan 255 kombinasi 0 dan 1). Sekarang dihitung : 127- (-128) + 1 = 256. Mengapa +1 ? Karena 127 termasuk dalam kombinasi tersebut.Nah mungkin kita sudah biasa mendeklarasikan variable char di C/C++ seperti
#include <stdio.h>
int main()
{
char x;
x = 'b';
}
int main()
{
char x;
x = 'b';
}
Tanpa kita sadari bahwa kalau kita hanya menuliskan "char x" maka secara otomatis tipe data tersebut yakni Signed Char bukan Unsigned Char.
Kita tahu bahwa semua variable di dalam pemrograman C/C++ itu disimpan di dalam memori. Lalu apa bentuknya bila kita mendeklarasikan
char x;
x = 'b';
x = 'b';
Untuk melihat bagaimana penyimpanan variable x di dalam memori maka kita harus mengkonvert variable x menjadi biner. Caranya menyerupai ini :
x berisi abjad 'b'. Karakter 'b' mempunyai ASCII 98. Setelah itu kita konvert 98 ke biner.
Maka didapat hasil
01100010
Tepat 8 bit. Nah biner itulah yang disimpan di dalam memori.
Contoh lain yang menandakan bahwa kalau kita mendeklarasikan "char x" itu sama dengan kita mendeklarasikan "signed char" :
#include <stdio.h>
int main()
{
char x;
x = 225;
printf("%i", x);
}
int main()
{
char x;
x = 225;
printf("%i", x);
}
-31
Lalu bagaimana sanggup jadi -31 ?
Oke, kita jelaskan dari awal.
=> Pertama variabel x di set bernilai 225
=> Padahal x tipe data signed char, maka -1 * (255 - 225 + 1) = -31
=> Lalu cetak variabel x dengan format %i atau integer dan menghasilkan output -31
-
=> Padahal x tipe data signed char, maka -1 * (255 - 225 + 1) = -31
=> Lalu cetak variabel x dengan format %i atau integer dan menghasilkan output -31
-
-1 * (255 - 255 + 1) = -1
Dan Anda sanggup buktikan sendiri lewat compiler C++/C.
- Unsigned Char
Langsung saja kita ke pola berikut : #include <stdio.h>
int main()
{
unsigned char c;
c = 255;
printf("%d", c);
}
int main()
{
unsigned char c;
c = 255;
printf("%d", c);
}
255
Mengapa tetap 255 ? Ya alasannya yakni unsigned char yakni tipe data character yang mempunyai range dari 0 - 255.
Inti Perbedaan Signed Char dan Unsigned Char
Signed char bila diisi nilai 128 maka bila di print memakai format %i maka outputnya -127Unsigned char bila diisi nilai 128 maka bila di print memakai format %i maka outputnya 128
Mudah kan ? Untuk lebih memudahkan lagi kita buat menyerupai ini saja
Signed Char : 0,1,2,3,...,126,127,-128,-127,-126,-125,...,-3,-2,-1
Unsigned Char: 0,1,2,3,...,126,127, 128, 129, 130, 131,......,253,254,255
Itu yakni 2 macam tipe data character di C/C++ Sumber http://komputer67.blogspot.com
0 Response to "Tipe Data Character | Berguru Struktur Data C & C++"
Posting Komentar