Rumah Keuangan Pribadi Menghindari pengungkapan biasa di Perl - dummies

Menghindari pengungkapan biasa di Perl - dummies

Daftar Isi:

Video: Words at War: They Shall Inherit the Earth / War Tide / Condition Red 2024

Video: Words at War: They Shall Inherit the Earth / War Tide / Condition Red 2024
Anonim

Memasuki salah ketik atau dua saat mengerjakan program Perl tidak jarang terjadi. Tapi ketika Anda mencoba menjalankan sebuah program yang berisi entri teks tergelincir, Perl biasanya menjadi bingung dan mengatakannya kepada Anda dengan melaporkan kesalahan. Reaksi alami bagi kebanyakan orang, bahkan pengalaman bertahun-tahun dalam pemrograman, adalah khawatir atau marah atau keduanya saat pesan kesalahan muncul.

Jangan panik Tarik napas dalam-dalam. Ambil napas panjang dan pelan. Serius, Anda tidak bisa sampai ke akar masalahnya jika Anda merasa tegang dan terganggu. Tidak peduli berapa tahun Anda memprogram, Anda selalu menemukan beberapa kesalahan dalam kode yang Anda tulis.

Jadi, sekarang Anda (mudah-mudahan!) Sedikit lebih tenang, Anda bisa mulai menghargai kenyataan bahwa Perl memiliki pesan kesalahan yang lebih bermanfaat daripada hampir semua bahasa pemrograman lainnya. Pesannya tidak selalu tepat untuk uang, tapi bisa membuat Anda cukup dekat dengan tempat di mana masalahnya terletak pada pencarian minimal di pihak Anda.

Perl memiliki banyak pesan kesalahan, tapi beberapa pasti muncul lebih banyak daripada yang lain karena beberapa kesalahan umum yang tampaknya dilakukan setiap orang. Hasil kesalahan berikut dari kesalahan entri teks biasa yang dapat Anda hindari dengan mudah.

Melupakan titik koma

Mungkin pesan kesalahan paling umum yang Anda lihat saat memprogram di Perl terlihat seperti ini:

# syntax error, near "open"

File 'counter1. pl '; Baris 10

# Eksekusi dibatalkan karena kesalahan kompilasi.

Anda bisa melihat dan melihat Baris 10, yang berisi pernyataan terbuka, dan Anda tidak akan melihat ada yang salah dengan itu. Caranya di sini adalah untuk memeriksa pernyataan yang datang sebelum pernyataan terbuka dan lihat apakah itu berakhir dengan titik koma. (Perl tahu bahwa sebuah pernyataan hanya berakhir saat ia menemukan titik koma.) Dalam kasus ini, kesalahan disebabkan oleh titik koma yang hilang pada akhir Baris 7 program:

$ TheFile = "contoh. txt "

Melupakan tanda kutip

Jenis pesan kesalahan berikut bisa sangat membuat frustrasi jika Anda tidak mengetahui perbaikan cepat:

# Kata yang jarang ditemukan di tempat yang diharapkan operator, dekat

#" buka (INFILE, $ TheFile) atau matikan string "The"

# (Mungkin ada pelarian multi-line "mulai dari

# line 7)

File 'counter1. pl '; Baris 10

Kesalahan ini sama dengan melupakan titik koma; Sebagai gantinya, ini adalah tanda kutip yang secara tidak sengaja dihilangkan:

$ TheFile = "sample. txt;

Dalam kasus ini, Perl melakukan pekerjaan dengan baik untuk menebak apa yang salah, menunjukkan bahwa string multi-line pelarian "pada jalur 7 adalah masalahnya, yang benar sekali.

Memasuki satu tanda kurung terlalu banyak atau terlalu sedikit

Bila Anda memiliki banyak tanda kurung buka dan tutup dalam sebuah program, mudah untuk memasukkan yang lain secara tidak sengaja. Jika itu yang terjadi, Anda mungkin melihat pesan dari Perl yang membaca sesuatu seperti ini:

# syntax error, near ") eq"

File 'counter1. pl '; Baris 38

# kesalahan sintaks, dekat "}"

Berkas 'counter1. pl '; Baris 42

Di sini, Perl tidak dapat menentukan di mana kesalahannya sebenarnya, tapi sebenarnya benar pada dugaan pertama: Baris 38 berisi tanda kurung sebelah kanan:

jika (substr ($ TheLine, $ CharPos, 1)) eq "")

Memiliki satu tanda kurung terlalu sedikit dalam program Perl dapat menyebabkan masalah yang sulit ditemukan:

# Tidak dapat menggunakan item konstan sebagai argumen kiri yang implisit ->,

# dekat "1}"

File 'counter1. pl '; Baris 39

# Scalar menemukan lokasi yang diharapkan operator, dekat "$ CharPos"

File 'counter1. pl '; Baris 40

# (Titik koma yang tidak ada pada baris sebelumnya?)

# kesalahan sintaks, dekat "$ CharPos"

File 'counter1. pl '; Baris 40

Yarp! Semua ini diproduksi karena tanda kurung terakhir pada Baris 38 hilang:

jika (substr ($ TheLine, $ CharPos, 1) eq ""

Berikut adalah pelajaran bagus lainnya untuk memburu kesalahan pengetikan: Mulai dari mana Perl mengatakan itu menemukan kesalahan.Jika Anda tidak menemukan kesalahan di sana, naik satu atau dua baris dan lihat apakah masalah dimulai lebih awal.

Kata terakhir dari saran: Percayalah Perl untuk menemukan kesalahan ketik yang sederhana untuk Anda (di mana itu dapat), dan ingat bahwa itu memberi Anda semua bantuan yang bisa dilakukan, yang lebih dari yang dapat Anda katakan untuk banyak bahasa pemrograman.

Menghindari pengungkapan biasa di Perl - dummies

Pilihan Editor

Menghilangkan Kesalahan dengan Text to Speech di Excel 2013 - dummies

Menghilangkan Kesalahan dengan Text to Speech di Excel 2013 - dummies

Fitur Text to Speech yang bagus dapat membantu Anda bendera dan kemudian memperbaiki beberapa kesalahan yang jika tidak, anda harus memeriksa dan memverifikasi dengan membandingkan sel ke sel. Biasanya, Anda melakukan ini dengan memeriksa kolom dan baris data dalam spreadsheet terhadap dokumen asli tempat Anda membuat spreadsheet. Teks Excel ...

Membuat Database Anda dengan Fungsi Database Excel - dummies

Membuat Database Anda dengan Fungsi Database Excel - dummies

Semua fungsi database di Excel mengambil referensi database sebagai argumen pertama Area database harus menyertakan header (field name) pada baris pertama. Pada gambar berikut, baris pertama menggunakan Student ID, Class, Teacher, dan Final Grade sebagai header informasi di masing-masing kolom. Menggunakan database untuk menyimpan siswa ...

Fungsi Excel penting untuk Membangun Model Keuangan - dummies

Fungsi Excel penting untuk Membangun Model Keuangan - dummies

Hari ini memiliki lebih dari 400 fungsi yang tersedia di Excel, dan Microsoft terus menambahkan lebih banyak dengan setiap versi baru perangkat lunak. Banyak fungsi ini tidak relevan untuk digunakan di bidang keuangan, dan sebagian besar pengguna Excel hanya menggunakan persentase yang sangat kecil dari fungsi yang ada. Jika Anda menggunakan Excel untuk tujuan pemodelan keuangan, ...

Pilihan Editor

Dasar-dasar Mentransfer Foto Digital - dummies

Dasar-dasar Mentransfer Foto Digital - dummies

Mentransfer (juga dikenal sebagai men-download atau meng-upload) foto dan film ke Komputer adalah proses yang cukup sederhana. Anda dapat mentransfer beberapa cara yang berbeda. Masing-masing memiliki pro dan kontra. Beberapa metode membutuhkan perangkat keras tambahan, seperti card reader. Menghubungkan Sebelum Anda mulai mentransfer foto ke komputer Anda, Anda harus membuat sambungan. ...

Memilih Kamera Digital Metering Mode - dummies

Memilih Kamera Digital Metering Mode - dummies

Banyak kamera digital menawarkan pilihan mode metering autoexposure. Metering mode berarti cara di mana meteran mekanisme autoexposure kamera - mengukur - cahaya di tempat kejadian saat menghitung pemaparan yang tepat untuk foto Anda. Anda biasanya dapat memilih dari metering matriks, metering tertimbang kelas, dan metering spot.

Pilihan Editor

KetikPad Blogs: Bagaimana Memasukkan Gambar Sidebar - dummies

KetikPad Blogs: Bagaimana Memasukkan Gambar Sidebar - dummies

Termasuk gambar sidebar di TypePad Anda blog adalah cara terbaik untuk mempromosikan situs web, blog, atau produk lain. Gambar bilah samping biasanya terbilang kecil (sering 125 piksel dengan 125 piksel), namun ukurannya pada akhirnya bergantung pada tema dan desain blog Anda sendiri. Selain itu, Anda dapat mengatur gambar untuk ditautkan ke ...

Ketik Dashboard Dashboard Shortcuts - dummies

Ketik Dashboard Dashboard Shortcuts - dummies

Di halaman utama blog TypePad Anda, strip hijau di bagian atas adalah Dashboard - bilah navigasi tingkat akun Anda. Gunakan Dasbor TypePad untuk mengakses akun TypePad inti Anda, bukan hanya blog individual Anda - perbedaan penting untuk menarik karena banyak orang mengelola beberapa blog dari satu akun. Ini berguna ...

Jenis Komunitas Online - dummies

Jenis Komunitas Online - dummies

Banyak jenis komunitas online ada, namun mekanika dan inner pekerjaannya serupa. Meskipun fokus setiap komunitas online mungkin tidak terkait, tipe kepribadiannya bersifat universal. Setelah beberapa saat, tipe kepribadian ini mudah dikenali, bahkan jika Anda telah beralih ke komunitas lain. Komunitas online di-host di berbagai ...