Lompat ke konten Lompat ke sidebar Lompat ke footer

Menduplikasi Nilai String Menggunakan STRDUP dan STRNDUP Bahasa C

Fungsi strdup() merupakan fungsi return yang digunakan untuk mengembalikan nilai pointer ke sebuah nilai string byte null-terminated, yang merupakan sebuah nilai duplikat dari string yang dituju sebelum oleh nilai s. Memori yang menggunakan fungsi strup() dialokasikan secara dinamis menggunakan malloc, dan dapat dibebaskan nilai alokasinya menggunakan perintah free(). Fungsi strdup() mengembalikan nilai pointer ke nilai duplikat string s.

Menduplikasi Nilai String Menggunakan STRDUP dan STRNDUP pada Bahasa C
Fungsi STRDUP dan STRNDUP pada Bahasa C

Sebelum memahami lebih dalam materi tentang Menduplikasi Nilai String Menggunakan STRDUP dan STRNDUP Bahasa C, terlebih dahulu pelajari materi tentang: Membandingkan Dua String Menggunakan STRCMP pada Bahasa C [klik], Strcpy Bahasa C dan Fungsinya [klik], dan Mengakses Array di Luar Batas Bahasa C [klik].

Sintak Fungsi strdup(): char *strdup(const char *s);

Berikut adalah implementasi bahasa C yang memperlihatkan fungsi dari strdup().

Baca Juga:

Contoh:

// Program Bahasa C untuk 

// mendemonstrasikan fungsi

// strdup()

#include<stdio.h>

#include<string.h>


int main()

{

char source[] = "MakandanMakan";


// Duplikasi sumber dibuat 

// secara dinamis dan nilai

// duplikasi pointer

// dikembalikan.

char* target = strdup(source);

printf("%s", target);


return 0;

}

Output:
MakandanMakan

Fungsi strndup() merupakan fungsi yang memiliki fungsi yang hampir sama seperti fungsi strdup(), namun melakukan duplikasi pada semua nilai byte n.

Sintak Fungsi strndup(): char *strndup(const char *s, size_t n);

Catatan: jika nilai s lebih panjang dari nilai n, maka hanya nilai byte n yang akan diduplikasi, dan sebuah nilai NULL ('\0') akan ditambahkan pada bagian akhir.

Berikut adalah implementasi program bahasa C untuk memperlihatkan fungsi strndup().

Contoh:

// Program Bahasa C untuk

// mendemonstrasikan fungsi

// strndup().

#include<stdio.h>

#include<string.h>


int main()

{

char source[] = "MakandanMakan";


// Nilai 5 byte dari sumber

// diduplikasi ke memori

// alokasi dinamis baru dan

// pointer ke nilai duplikasi

// memori yang dikembalikan

// tersebut.

char* target = strndup(source, 5);

printf("%s", target);


return 0;

}

Output:
Makan

6 komentar untuk "Menduplikasi Nilai String Menggunakan STRDUP dan STRNDUP Bahasa C"

  1. Apa fungsi dari STRDUP dan STRNDUP pada Bahasa C?

    BalasHapus
    Balasan
    1. Pada dasarnya kedua fungsi tersebut hampir memiliki peran yang sama, yaitu untuk mengembalikan nilai pointer ke sebuah nilai string byte null-terminated.

      Hapus
  2. Apa yang dimaksud dengan fungsi dari strdup() pada bahasa C?

    BalasHapus
    Balasan
    1. Fungsi strdup() pada Bahasa C merupakan fungsi yang digunakan untuk mengembalikan nilai pointer ke string baru, yang merupakan bentuk duplikat dari string yang ditunjuk oleh S1.

      Hapus
  3. Apa fungsi dari fungsi strndup() pada Bahasa C?

    BalasHapus
    Balasan
    1. Fungsi strndup() pada bahasa C merupakan fungsi yang digunakan untuk mengembalikan nilai pointer ke string byte yang diakhiri dengan nilai null, yang berisi nilai salinan byte ukuran paling banyak dari string yang ditunjuk oleh str.

      Hapus

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 -