C Wrapper Perpustakaan Standar Periksa Nilai Pengembalian Panggilan Perpustakaan untuk Kesalahan

C Wrapper Perpustakaan Standar Periksa Nilai Pengembalian Panggilan Perpustakaan untuk Kesalahan

PENGARANG: Tobin Harding

Kode C produksi harus selalu memeriksa nilai pengembalian perpustakaan
panggilan untuk kesalahan. Namun, cek ini sering membutuhkan penulisan yang sama
kode berulang kali. Ada sejumlah solusi untuk masalah ini
yang ini hanya satu.

Misalnya

int foo (char *s) char *buf; if ((buf = malloc (strlen (s) + 1)) == null) / * error * /... 

Seringkali Anda lebih suka mengabaikan kondisi kesalahan ini tetapi ini
Kode produksi benar! Dengan mendeklarasikan fungsi pembungkus
void *malloc (size_t size); dan mendefinisikannya

void *malloc (size_t size) void *ptr; if ((ptr = malloc (size)) == null) fprintf (stderr, "malloc error"); EXIT (EXIT_FAILURE);  return (ptr);  

Kami kemudian dapat menggunakan fungsi ini dalam kode kami. Cuplikan kode di atas bisa
sekarang ditulis sebagai

int foo (char *s) char *buf; buf = malloc (strlen (s) + 1);… 

Dan kami dapat terus senang bahwa kami telah memeriksa kesalahannya
kondisi. Jika persyaratan maka ubah itu hanyalah masalah
memperbarui fungsi pembungkus untuk mengubah perilaku secara keseluruhan
proyek.

Semoga beruntung.

Atribusi:
Saya diperkenalkan dengan ide -ide yang disajikan di sini oleh teks
Pemrograman Jaringan UNIX - Stevens, Fenner, dan Rudoff

Tutorial Linux Terkait:

  • Tutorial debugging GDB untuk pemula
  • Cara Membangun Aplikasi Tkinter Menggunakan Objek Berorientasi…
  • Ekspresi reguler Python dengan contoh
  • Bagaimana melakukan operasi administrasi dengan ansible…
  • Lanjutan regex bash canggih dengan contoh
  • Cara mengelola repositori git dengan python
  • Loop bash dengan contoh
  • Bagaimana bekerja dengan WooCommerce Rest API dengan Python
  • Instal Arch Linux di VMware Workstation
  • Cara Terhubung ke Server FTP Menggunakan Python