Xử lý lỗi trong C | 64 bài học lập trình C hay nhất PDF xu ly loi trong c

3 159 0
Xử lý lỗi trong C | 64 bài học lập trình C hay nhất PDF xu ly loi trong c

Đang tải... (xem toàn văn)

Thông tin tài liệu

http://vietjack.com/lap_trinh_c/index.jsp                                                                                                              Copyright  ©  vietjack.com     Xử lý lỗi C Các ngôn ngữ lập trình ngơn ngữ C khơng cung cấp trực tiếp hỗ trợ việc xử lý lỗi ngơn ngữ chương trình hệ thống, cung cấp mức thấp dạng giá trị trả Hầu hết hàm C hàm Unix trả giá trị null trường hợp lỗi thiết lập mã lỗi errno cho biến tồn cục dẫn có lỗi xảy q trình gọi hàm Bạn tìm thấy nhiều mã lỗi khác Header file có tên Vì lập trình viên C kiểm tra giá trị trả thực hành động xác dựa vào giá trị trả Trong thực tế, lập trình viên nên thiết lập giá trị errno thời điểm khởi tạo chương trình Một giá trị thể khơng có lỗi chương trình Hàm perror() strerror() thơng báo lỗi errno C Ngơn ngữ chương trình C cung cấp hàm perror() strerror() sử dụng để hiển thị thông báo lỗi errno • Hàm perror() hiển thị chuỗi mà bạn truyền cho nó, theo sau dấu hai chấm, khoẳng trắng sau đoạn văn mơ tả giá trị lỗi • Hàm strerror() trả trỏ đến đoạn văn biểu diễn giá trị lỗi Cùng thử mô điều kiện lỗi thử mở file không tồn Tại sử dụng hai hàm để cách sử dụng, bạn sử dụng nhiều cách để in giá trị lỗi bạn Điểm quan trọng thứ cần ghi nhớ bạn nên sử dụng stderr để đưa tất lỗi #include #include /* header file de su dung cac ham va hang can thiet*/ #include extern int errno ; int main () { FILE * pf; int errnum; pf = fopen ("unexist.txt", "rb"); if (pf == NULL) { errnum = errno; fprintf(stderr, "Gia tri cua errno la: %d\n", errno); perror("Error duoc in boi ham perror"); fprintf(stderr, "Loi xuat hien mo file: %s\n", strerror( errnum )); } else { fclose (pf); } printf("\n===========================\n"); printf("VietJack chuc cac ban hoc tot! \n"); return 0; } Biên dịch thực thi chương trình C cho kết sau: http://vietjack.com/                                                                                                                              Trang  chia  sẻ  các  bài  học  online  miễn  phí     http://vietjack.com/lap_trinh_c/index.jsp                                                                                                              Copyright  ©  vietjack.com     Lỗi chia cho số C Đây lỗi phổ biến trình chia, lập trình viên không kiểm tra điều kiện số bị chia số gặp lỗi q trình thực Đoạn code bên sửa lỗi việc kiểm tra điều kiện số bị chia số trước chia: #include #include main() { int sochia = 15; int sobichia = 0; int thuong; if( sobichia == 0){ fprintf(stderr, "Ban dang thuc hien phep chia cho so 0!!! Ket thuc chuong trinh \n"); exit(-1); } thuong = sochia / sobichia; fprintf(stderr, "Gia tri cua thuong la : %d\n", thuong ); printf("\n===========================\n"); printf("VietJack chuc cac ban hoc tot! \n"); exit(0); } Biên dịch thực thi chương trình C cho kết sau: Trạng thái chương trình C Trong thực tế để chương trình với giá trị EXIT_SUCCESS trường hợp chương trình sau hoạt động thành công Ở EXIT_SUCCESS macro định nghĩa giá trị Nếu bạn có điều kiện lỗi chương trình bạn, bạn nên với trạng thái trả EXIT_FAILURE định nghĩa có giá trị -1 Bây viết chương trình sau: #include #include main() { int sochia = 36; int sobichia = 6; int thuong; if( sobichia == 0){ fprintf(stderr, "Ban dang thuc hien phep chia cho so 0!!! Ket thuc chuong trinh \n"); exit(EXIT_FAILURE); } thuong = sochia / sobichia; fprintf(stderr, "Gia tri cua thuong la: %d\n", thuong ); printf("\n===========================\n"); printf("VietJack chuc cac ban hoc tot! \n"); exit(EXIT_SUCCESS); } http://vietjack.com/                                                                                                                              Trang  chia  sẻ  các  bài  học  online  miễn  phí     http://vietjack.com/lap_trinh_c/index.jsp                                                                                                              Copyright  ©  vietjack.com     Biên dịch thực thi chương trình C cho kết sau:   http://vietjack.com/                                                                                                                              Trang  chia  sẻ  các  bài  học  online  miễn  phí     ... th c thi chương trình C cho kết sau: Trạng thái thoát chương trình C Trong th c tế để chương trình với giá trị EXIT_SUCCESS trường hợp chương trình sau hoạt động thành c ng Ở EXIT_SUCCESS macro định... số C Đây lỗi phổ biến trình chia, lập trình viên khơng kiểm tra điều kiện số bị chia số gặp lỗi trình th c Đoạn code bên sửa lỗi vi c kiểm tra điều kiện số bị chia số trư c chia: #include ... sochia / sobichia; fprintf(stderr, "Gia tri cua thuong la : %d ", thuong ); printf(" =========================== "); printf("VietJack chuc cac ban hoc tot! "); exit(0); } Biên dịch thực

Ngày đăng: 02/12/2017, 14:17

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan