Bahasa C
Dalam tutorial ini, Anda akan belajar menggunakan pointer untuk mengakses anggota struct dalam pemrograman C. Anda juga akan belajar mengalokasikan memori tipe struct secara dinamis.
Sebelum Anda mempelajari tentang bagaimana pointer dapat digunakan dengan struct, pastikan untuk memeriksa tutorial ini:
Berikut cara membuat pointer ke struct.
struct name {
member1;
member2;
.
.
};
int main()
{
struct name *ptr, Harry;
}
Di sini, ptr adalah penunjuk ke struct
.
Untuk mengakses anggota struktur menggunakan pointer, kita menggunakan ->
operator.
#include <stdio.h>
struct person
{
int age;
float weight;
};
int main()
{
struct person *personPtr, person1;
personPtr = &person1;
printf("Enter age: ");
scanf("%d", &personPtr->age);
printf("Enter weight: ");
scanf("%f", &personPtr->weight);
printf("Displaying:\n");
printf("Age: %d\n", personPtr->age);
printf("weight: %f", personPtr->weight);
return 0;
}
Dalam contoh ini, alamat person1 disimpan di personPtr penunjuk menggunakan personPtr = &person1;
.
Sekarang, Anda dapat mengakses anggota person1 menggunakan personPtr
penunjuk.
Omong-omong,
personPtr->age
setara dengan (*personPtr).age
personPtr->weight
setara dengan (*personPtr).weight
Sebelum Anda melanjutkan bagian ini, sebaiknya periksa alokasi memori dinamis C.
Terkadang, jumlah variabel struct yang Anda deklarasikan mungkin tidak mencukupi. Anda mungkin perlu mengalokasikan memori selama run-time. Inilah cara Anda dapat mencapainya dalam pemrograman C.
#include <stdio.h>
#include <stdlib.h>
struct person {
int age;
float weight;
char name[30];
};
int main()
{
struct person *ptr;
int i, n;
printf("Enter the number of persons: ");
scanf("%d", &n);
// allocating memory for n numbers of struct person
ptr = (struct person*) malloc(n * sizeof(struct person));
for(i = 0; i < n; ++i)
{
printf("Enter first name and age respectively: ");
// To access members of 1st struct person,
// ptr->name and ptr->age is used
// To access members of 2nd struct person,
// (ptr+1)->name and (ptr+1)->age is used
scanf("%s %d", (ptr+i)->name, &(ptr+i)->age);
}
printf("Displaying Information:\n");
for(i = 0; i < n; ++i)
printf("Name: %s\tAge: %d\n", (ptr+i)->name, (ptr+i)->age);
return 0;
}
Saat Anda menjalankan program, outputnya adalah:
Enter the number of persons: 2 Enter first name and age respectively: Harry 24 Enter first name and age respectively: Gary 32 Displaying Information: Name: Harry Age: 24 Name: Gary Age: 32
Pada contoh di atas, n jumlah variabel struct dibuat di mana n dimasukkan oleh pengguna.
Untuk mengalokasikan memori untuk n jumlah orang struct , kami menggunakan,
ptr = (struct person*) malloc(n * sizeof(struct person));
Kemudian, kami menggunakan ptr pointer untuk mengakses elemen person .
Bahasa C
Petunjuk C++ Dalam tutorial ini, kita akan belajar tentang pointer di C++ dan cara kerjanya dengan bantuan contoh. Dalam C++, pointer adalah variabel yang menyimpan alamat memori dari variabel lain. Alamat di C++ Jika kita memiliki variabel var dalam program kami, &var akan memberi kita alamatnya
Penunjuk dan Array C++ Dalam tutorial ini, kita akan belajar tentang hubungan antara array dan pointer dengan bantuan contoh. Dalam C++, Pointer adalah variabel yang menyimpan alamat dari variabel lain. Pointer tidak hanya dapat menyimpan alamat variabel tunggal, tetapi juga dapat menyimpan alamat
C while dan do... while Loop Dalam tutorial ini, Anda akan belajar membuat while dan do... while loop dalam pemrograman C dengan bantuan contoh. Dalam pemrograman, loop digunakan untuk mengulang blok kode sampai kondisi tertentu terpenuhi. Pemrograman C memiliki tiga jenis loop. untuk loop perul
C Praprosesor dan Makro Dalam tutorial ini, Anda akan diperkenalkan dengan c preprocessors, dan Anda akan belajar menggunakan kompilasi #include, #define dan conditional dengan bantuan contoh. Preprosesor C adalah praprosesor makro (memungkinkan Anda untuk menentukan makro) yang mengubah program