Pengaturcaraan C

Cara Menggunakan Panggilan Sistem Lseek di C

Cara Menggunakan Panggilan Sistem Lseek di C

Panggilan Sistem Lseek telah digunakan untuk membaca beberapa karakter atau data tertentu dari sebuah file atau untuk menulis beberapa konten di lokasi tertentu dari setiap file. Ini bermaksud anda boleh membaca atau menulis di antara kandungan fail.

Sintaks:

Off_t lseek (int fd, off_t offset, int whence);

Panggilan sistem "lseek" ini memerlukan dua fail tajuk, e.g., "Sys / jenis.h "dan" unistd.h ”. Panggilan sistem lseek memerlukan tiga parameter. Yang pertama adalah "fd", yang merupakan deskriptor fail. Yang kedua adalah "offset," digunakan untuk meletakkan penunjuk. Dan parameter ketiga, "dari mana," digunakan untuk menentukan kedudukan penunjuk fail, e.g., permulaan, akhir, pertengahan.

Pasang Halaman Utama:

Untuk memeriksa maklumat tambahan mengenai panggilan sistem, anda harus memasang pakej manpages-dev. Oleh itu, cubalah melancarkan terminal shell Linux menggunakan kekunci pintas Ctrl + Alt + T atau cari dari kawasan aktiviti. Setelah berjaya melancarkan terminal arahan, jalankan pertanyaan pemasangan apt di bawah untuk memasang perpustakaan manpages-dev. Ia memerlukan kod laluan akaun semasa anda untuk meneruskan pemasangan. Masukkan kata laluan dan ketik kekunci Enter dari mesin taip. Proses pemasangan akan dimulakan dan mula mengumpulkan maklumat.

$ sudo apt install manpages-dev

Proses pemasangan akan membuatkan anda menunggu sedikit masa. Setelah pemasangan selesai, anda kini dapat memeriksa maklumat mengenai perintah "lseek".  Jadi, tulis arahan "man 2" di bawah ini bersama dengan nama panggilan sistem. Seperti yang anda lihat, kami telah memeriksa "lseek" dalam petunjuk di bawah.

$ lelaki 2 lseek

Halaman manual untuk panggilan sistem "lseek" telah dibuka di bawah. Anda boleh mendapatkan semua maklumat mengenainya.

Pasang GCC Compiler:

Kini tiba masanya untuk kita memasang penyusun GCC untuk penyusunan fail bahasa C. Oleh itu, anda mesti menggunakan perintah apt install yang sangat mudah di shell untuk memasangnya semasa menggunakan pelanjutan penyusun sebagai nama kata kunci di bawah.

$ sudo apt pasangkan gcc

Anda memerlukan sedikit masa untuk menyelesaikannya. Setelah memasang pakej gcc, sistem Linux anda siap menggunakan fail bahasa c di dalamnya.

Contoh 01:

Sebelum memahami konsep panggilan sistem lseek, anda harus memulakannya dengan jenis fail yang mudah. Oleh itu, lancarkan terminal dan cuba arahan sentuhan di bawah ini untuk membuat fail mudah bernama "cari" di direktori utama distribusi Linux anda.

$ sentuhan mencari

Tambahkan beberapa data ke dalam fail "cari" dan simpan. Anda dapat melihat fail "mencari" kandungan di shell baris perintah dengan menggunakan pertanyaan "kucing" sederhana di bawah. Kandungan fail mempunyai beberapa huruf dan angka bersama dengan tanda "*".

$ cari kucing

Mari buat ujian jenis fail C.c ”menggunakan kata kunci nano untuk membukanya secara langsung dengan penyunting Nano. Cuba jalankan arahan di bawah untuk melakukannya.

ujian $ nano.c

Mari kita periksa satu program tanpa arahan lseek. Ia akan membuka editor teks nano dengan fail jenis-C yang disebut di sebelah atas. Sekarang tulis kod yang ditunjukkan di bawah dari gambar dalam fail editor C. 4 baris pertama mengandungi fail header yang diperlukan untuk melaksanakan perintah "lseek". Selepas itu, fungsi utama telah dimulakan. Dalam kaedah utama ini, kami telah menentukan data bilangan bulat dan jenis watak untuk penggunaan selanjutnya. Baris ketiga fungsi utama telah menggunakan panggilan terbuka untuk membuka fail bernama "mencari," yang baru saja kita buat di atas, dan "O_RDWR" mengimbangi telah digunakan untuk membaca dan menulis kebenaran. Isi dari file telah dikembalikan ke deskriptor file "f". Selepas ini, kami telah menggunakan panggilan kaedah baca pertama untuk membaca 12 data watak dari fail carian. Fungsi menulis telah digunakan untuk menulis data ke dalam skrin. Perintah baca lain telah digunakan untuk mendapatkan 12 aksara berikutnya dari deskriptor fail "f", dan perintah tulis membaca 12 aksara berikutnya ke layar output. Dari ini, kita dapat menganggap bahawa output akan menunjukkan total 24 aksara dari file "seek". Tekan Ctrl + S untuk menyimpan fail ini dan cuba Ctrl + X untuk menutupnya.

Mari kita menyusun "ujian.c ”fail dengan menggunakan arahan penyusun GCC di bawah.

ujian $ gcc.c

Sekarang jalankan kod "ujian.c ”fail untuk memeriksa output kod C seperti yang diberikan di bawah. Hasilnya telah menunjukkan 24 set kandungan kandungan dari carian fail seperti di bawah.

$ ./ a.keluar

Mari gunakan perintah "lseek" dalam kod untuk memeriksa output panggilan sistem. Oleh itu, buka ujian yang sama.c file menggunakan arahan nano di bawah.

ujian $ nano.c

Kemas kini kod anda sebagaimana adanya. Kali ini kami telah menggunakan 6 watak dari fail kandungan untuk dibaca dan ditulis. Perintah lseek telah digunakan untuk melangkau 5 aksara berikutnya dari fail kandungan dan melompat ke watak seterusnya menggunakan "SEEK_CUR" offset.

Mari kita susun semula kod ini.

ujian $ gcc.c

Keluaran kod C menggunakan a.perintah keluar menunjukkan 6 aksara pertama, kemudian melangkau 5 aksara seterusnya dan kemudian menunjukkan 6 aksara berikutnya berturut-turut.

$ ./ a.keluar

Contoh 02:

Untuk melakukan perubahan, mari ubah kodnya. Buka fail terlebih dahulu.

ujian $ nano.c

Sekarang kita akan menggunakan "SEEK_SET" offset untuk memberitahu panggilan sistem "lseek" untuk menunjukkan 6 aksara berikutnya dari kedudukan ke-10 rentetan.

Susun fail C.

ujian $ gcc.c

Perintah output a.keluar telah menunjukkan 6 aksara dari indeks ke-10 rentetan.

Kesimpulan:

Panduan ini telah melakukan beberapa contoh mudah menggunakan perintah panggilan sistem "lseek" untuk memeriksa atau menunjukkan kandungan atau data dari kedudukan apa pun yang kita mahukan.

Buat semula butang tetikus anda secara berbeza untuk perisian yang berbeza dengan X-Mouse Button Control
Mungkin anda memerlukan alat yang dapat mengubah kawalan tetikus anda dengan setiap aplikasi yang anda gunakan. Sekiranya ini berlaku, anda boleh menc...
Kajian Tetikus Tanpa Wayar Microsoft Sculpt Touch
Saya baru-baru ini membaca mengenai Sentuhan Microsoft Sculpt tetikus tanpa wayar dan memutuskan untuk membelinya. Setelah menggunakannya sebentar, sa...
Trackpad dan Mouse Pointer pada skrin Windows AppyMouse untuk Tablet Windows
Pengguna tablet sering kehilangan penunjuk tetikus, terutama ketika mereka biasa menggunakan komputer riba. Telefon pintar dan tablet skrin sentuh dil...