Minggu, 15 April 2018

Penggunaan Struct dan Typedef Pada C++


STRUCT

Definisi Struktur (struct) sendiri adalah kumpulan dari variabel yang dinyatakan dengan sebuah nama , dengan sifat setiap variabel dapat memiliki tipe yang berlainan. Dalam pemrograman C++, jika kita membuat suatu program yang memerlukan berbagai tipe data yang akan digunakan.

disini saya membuat contoh struct :

Source code

#include <stdio.h>

struct Mahasiswa{
      char npm[10];
   char nama[32];
      struct tanggallahir {
   int tanggal, bulan, tahun;
   }tanggal_lahir;

};

int main()
{
struct Mahasiswa m;
   printf("NPM ="); scanf("%[^\n]", m.npm);
   getchar();
   printf("Nama  ="); scanf("%[^\n]", m.nama);
   getchar();
   printf("Tanggal Lahir =");
   scanf("%d", &m.tanggal_lahir.tanggal);
   getchar();
   printf("Bulan Lahir ="); scanf("%d", &m.tanggal_lahir.bulan);
   getchar();
   printf("Tahun Lahir ="); scanf("%d", &m.tanggal_lahir.tahun);
   getchar();
   printf("NPM = %s Nama = %s Tanggal Lahir = %04d-%02d-%02d",
      m.npm, m.nama,
      m.tanggal_lahir.tahun, m.tanggal_lahir.bulan, m.tanggal_lahir.tanggal
);
   getchar();
   getchar();
   return 0;

}
Output :
Analisis :
Karena struct kumpulan tipe data berbeda  menjadi data tunggal. Struct mahasiswa dinamakan m, sehingga untuk menampilkan data dituli misalnya m.nama untuk menampilkan nama dan seterusnya.

TYPEDEF

Typedef adalah keyword (kata kunci) yang digunakan untuk membuat nama alias untuk tipe data lain. 
Typedef sering digunakan untuk menyederhanakan sintaks yang menyatakan struktur data yang kompleks yang terdiri dari tipe struct dan union.

Contohnya sebagai berikut :

Source code

#include <stdio.h>

typedef struct{
      int hour;
   int minute;
   int second;
   } JAM;

int main(){
      JAM j;
   printf("Masukan jam ="); scanf("%d", &j.hour );
   printf("Masukan menit ="); scanf("%d", &j.minute);
   printf("Masukan detik ="); scanf("%d", &j.second);
   printf("Sekarang JAM %02d:%02d:%02d\n",
            j.hour, j.minute, j.second
         );
getchar(); getchar();
return 0;
}
Output :
Analisis :
Penggunaan typedef  tidak beda jauh dengan struck hanya yang membedakan struktur penulisannya dan pada typedef setelah int main tidak ditulis strucknya lagi. Untuk lebih jelasnya bisa di lihat seperti contoh diatas.

Tidak ada komentar:

Posting Komentar