Lompat ke konten Lompat ke sidebar Lompat ke footer

Melewatkan Nilai Array Melalui Value pada Bahasa C

Pada bahasa C, nama array merepresentasikan nilai alamat memori dan dalam digunakan untuk melewatkan nilai array. Dengan menggunakan array maka dapat dilakukan mengiriman nilai alamat dan nilai fungsi parameter penerima yang akan selalui diterima oleh program sebagai nilai pointer, bahkan jika nilai yang dilewatkan tersebut adalah menggunakan [].

Sebelum memahami lebih dalam materi tentang Melewatkan Nilai Array Melalui Value pada Bahasa C, terlebih dahulu pelajari materi tentang: Menduplikasi Nilai String Menggunakan STRDUP dan STRNDUP pada Bahasa C, Membandingkan Dua String Menggunakan STRCMP pada Bahasa C, dan Strcpy Bahasa C dan Fungsinya.

Cara Melewatkan Nilai Array Berdasarkan Value, dan Memastikan Nilai Duplikasi Terbaru Telah Dilewatkan dan Diterima oleh Fungsi

Untuk dapat melakukan hal tersebut, maka dapat dilakukan pengemasan array dalam sebuah struktur dan menciptakan sebuah nilai tipe variasi dari struktur tersebut, dan dilakukan pemberian nilai ke array tersebut. Setelah tahapan tersebut dilakukan, maka tahap selanjutnya adalah melewatkan nilai variabel ke beberapa fungsi lain dan melakukan modifikasi dari nilai tersebut sesuai dengan kebutuhan.

Catatan: nilai array akan diduplikasi ketika nilai tersebut dilewatkan sebagai nilai parameter, tetapi untuk nilai array dinamis hal tersebut tidak dapat dilakukan, sehingga cara yang dijelaskan sebelumnya hanya dapat berfungsi pada tipe array non dinamis yang diciptakan dapat menggunakan perintah new atau malloc.

Baca Juga:

Perhatikan demonstrasi berikut menggunakan bahasa pemrograman C.

Contoh:

// Program bahasa C untuk

// mendemonstrasikan nilai

// array melalui value

// menggunakan struktur.

#include<stdio.h>

#include<stdlib.h>

#define SIZE 5


// Dilakukan wrapper untuk

// nilai array untuk

// memastikan bahwa array

// telah dilewatkan nilainya

// melalui sebuah value.

struct ArrayWrapper

{

int arr[SIZE];

};


// Nilai array yang telah

// dilewatkan oleh value

// wrapped pada temp

void modify(struct ArrayWrapper temp)

{

int *ptr = temp.arr;

int i;


// Menampilkan nilai konten

// array

printf("In 'modify()', before modification\n");


for (i = 0; i < SIZE; ++i)

printf("%d ", ptr[i]);

printf("\n");


// Modifikasi nilai array

for (i = 0; i < SIZE; ++i)


// atau *(ptr + i)

ptr[i] = 100



printf("\nIn 'modify()', after modification\n");


for (i = 0; i < SIZE; ++i)

// atau *(ptr + i)

printf("%d ", ptr[i]); 

}


// Driver code

int main()

{


int i;

struct ArrayWrapper obj;


for (i=0; i<SIZE; i++)

obj.arr[i] = 10;


modify(obj);


// Menampilkan nilai konten

// array

printf("\n\nIn 'Main', after calling modify() \n");


for (i = 0; i < SIZE; ++i)

// Tidak mengalami perubahan

printf("%d ", obj.arr[i]); 


printf("\n");


return 0;


}

Output:
In 'modify()', before modification
10 10 10 10 10


In 'modify()', after modification
100 100 100 100 100


In 'Main', after calling modify()
10 10 10 10 10


5 komentar untuk "Melewatkan Nilai Array Melalui Value pada Bahasa C"

  1. Bagaimana cara melewatkan array melalui value pada Bahasa C?

    BalasHapus
    Balasan
    1. Dapat dilakukan dengan cara melewatkan nilai array menggunakan struct pada bahasa C.

      Hapus
  2. Apa yang dimaksud dengan melewatkan nilai array pada bahasa C?

    BalasHapus
    Balasan
    1. Sebuah nilai yang ditampung pada nilai array tertentu kemudian diduplikasi ke alamat yang lain bukan ke variabel yang lain.

      Hapus
  3. Lihat ada Hamtaro melewatkan nilai array pada Bahasa C.

    BalasHapus

Hubungi admin melalui Wa : +62-896-2414-6106

Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.

Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.

- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -