intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Tài liệu Hướng dẫn thực hành: Nhập môn lập trình - Nguyễn Hải Minh

Chia sẻ: Nguyên Hải Yên | Ngày: | Loại File: PDF | Số trang:8

94
lượt xem
9
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu "Hướng dẫn thực hành: Nhập môn lập trình - Nguyễn Hải Minh" giới thiệu các lỗi thường gặp khi biên dịch chương trình trên VC ++ 6.0 và một số bài tập áp dụng. Mời các bạn cùng tham khảo

Chủ đề:
Lưu

Nội dung Text: Tài liệu Hướng dẫn thực hành: Nhập môn lập trình - Nguyễn Hải Minh

Hướng dẫn thực hành: Nhập môn lập trình<br /> <br /> Lớp 07DB_A/B<br /> <br /> Người soạn: Nguyễn Hải Minh<br /> Email: nhminh@fit.hcmuns.edu.vn<br /> <br /> CHỦ ĐỀ: CÁC LỖI THƯỜNG GẶP KHI BIÊN DỊCH<br /> CHƯƠNG TRÌNH TRÊN VC++ 6.0<br /> ---oOo---<br /> <br /> I. GIỚI THIỆU<br /> Khi biên dịch chương trình (F7), chú ý cửa sổ Build ở dưới, các thông tin về lỗi (errors) và<br /> cảnh báo (warnings) nếu có sẽ được liệt kê chi tiết ở đây:<br /> <br /> Ví dụ trong hình: dòng màu vàng là lỗi, màu xanh là cảnh báo. Con số phía trước mỗi<br /> lỗi/cảnh báo cho biết số thứ tự dòng code xuất hiện lỗi/cảnh báo (ở đây là dòng thứ 9). Dựa<br /> vào những ký hiệu cũng như thông tin về lỗi/cảnh báo này, bạn có thể tìm ra nhanh chóng lỗi<br /> của mình nằm ở đâu và cách sửa như thế nào.<br /> Các bước cần làm khi biên dịch chương trình có lỗi:<br /> 1) Xem có bao nhiêu lỗi, bấm F4 để nhảy đến dòng chứa lỗi đầu tiên<br /> 2) Đọc xem thông báo lỗi là gì, sửa lỗi đó<br /> 3) Biên dịch lại project (F7) rồi quay lại bước 1<br /> <br /> Trang 1<br /> <br /> Hướng dẫn thực hành: Nhập môn lập trình<br /> <br /> Lớp 07DB_A/B<br /> <br /> II. MỘT SỐ LỖI THƯỜNG GẶP<br /> C2143: Syntax error : missing before <br /> Lỗi cú pháp (syntax error), thường là thiếu dấu đóng ngoặc, chấm phẩy<br /> <br /> Ví dụ: (9) missing ‘;’ before ‘return’ => Thiếu dấu ‘;’ trước câu lệnh return ở dòng 9. Rà soát<br /> lại trước dòng 9, phát hiện thiếu dấu ‘;’ sau câu lệnh printf(“Hello World!”)<br /> C1010: unexpected end of file while looking for precompiled header directive<br /> Lỗi này xuất hiện khi bạn không tạo Empty project mà tạo một project có sẵn (Hello World)<br /> với 2 file được tạo sẵn là StdAfx.h và StdAfx.cpp. Với loại project này, bạn phải #include<br /> StdAfx.h ngay đầu file .cpp chứa hàm main của bạn. Nếu không trình biên dịch sẽ báo lỗi như<br /> trên. Cách giải quyết:<br /> Cách 1: Thêm dòng #include “StdAfx.h” vào ngay đầu file .cpp chứa code chương<br /> trình của bạn<br /> <br /> Trang 2<br /> <br /> Hướng dẫn thực hành: Nhập môn lập trình<br /> <br /> Cách 2: Vào Project<br /> <br /> Settings<br /> <br /> Lớp 07DB_A/B<br /> <br /> chuyển sang tab C/C++, chọn Precompiled<br /> <br /> Headers trong Category, check vào ô Not Using Precompile Header<br /> <br /> C2001: newline in constant<br /> Lỗi này thường gặp khi một chuỗi hay ký tự khai báo mà quên đóng ngoặc kép ’ hay ”<br /> <br /> Ví dụ: chuỗi đưa vào lệnh printf (dòng thứ 8) thiếu dấu đóng ngoặc kép ”<br /> Trang 3<br /> <br /> Hướng dẫn thực hành: Nhập môn lập trình<br /> <br /> Lớp 07DB_A/B<br /> <br /> C2065: '' : undeclared identifier<br /> Lỗi này là do bạn đã sử dụng một biến hay hàm con mà chưa khai báo biến/hàm đó trong<br /> phạm vi sử dụng.<br /> <br /> Ví dụ:<br /> Dòng 8 sử dụng biến giatri chưa được khai báo<br /> Dòng 9 sử dụng hàm abs chưa được khai báo<br /> Dòng 10 sử dụng hàm Xuat chưa được khai báo<br /> Cách giải quyết: thêm vào các khai báo thích hợp (khai báo hàm abs được đặt trong math.h)<br /> <br /> Trang 4<br /> <br /> Hướng dẫn thực hành: Nhập môn lập trình<br /> <br /> Lớp 07DB_A/B<br /> <br /> C2447: missing function header (old-style formal list?)<br /> Lỗi này thường gặp khi sử dụng dấu ; trước dấu { trong thân hàm.<br /> Ví dụ:<br /> void Function(int a, int b);<br /> {<br /> a = a + b;<br /> }<br /> C2556: '' : overloaded functions only differs only by return type<br /> C2371: '' : redefinition; different basic types<br /> Hai lỗi này thường gặp khi có sự không khớp nhau giữa kiểu của hàm trong khai báo hàm<br /> và trong định nghĩa hàm<br /> Ví dụ:<br /> Khai báo hàm:<br /> <br /> int Function(int a, int b);<br /> <br /> Cài đặt:<br /> <br /> void Function(int a, int b)<br /> {<br /> a = b * 2.3;<br /> return a;<br /> }<br /> <br /> Trang 5<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
5=>2