Top Banner

of 19

4. Debugging

Jul 06, 2018

Download

Documents

Man Truong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/16/2019 4. Debugging

    1/19

    LẬP TRÌNH VISUAL BASIC 

    TÌM VÀ SỬA LỖI MÃ VISUAL BASICTRONG MS VISUAL STUDIO 6.0

    Quách Đình Hoàng 

    Khoa Công nghệ Thông tinĐại học Sư  phạm Kỹ thuật TP.HCM

  • 8/16/2019 4. Debugging

    2/19

    LT

    VB

    LT

    VB

     NỘI DUNG 

    Các loại lỗi  Các lỗi thông dụng trong Visual Basic  Thiết lập BreakPoint 

    Debugging Toolbar và Debugging Menu Thực thi từng dòng lệnh  Các màn hình sửa lỗi  Watch Window

    Immediate Window

    Locals Window

    Call Stack

    LẬP TRÌNH VISUAL BASIC 

    2

  • 8/16/2019 4. Debugging

    3/19

    LT

    VB

    LT

    VB

    CÁC LOẠI LỖI 

    LẬP TRÌNH VISUAL BASIC 

    3

    Lỗi có thể được chia làm 3 loại chính  Lỗi cú pháp/biên dịch (syntax/compile error)  Từ khóa sai hay cấu trúc điều khiển sai cú pháp 

    Dòng bị lỗi hiển thị màu đỏ  Lỗi run-time (run-time error) Làm chương trình kết thúc đột ngột 

    Ví dụ: gán 2 biến có kiểu dữ liệu không khớp nhau 

    Lỗi logic (logic error)  Làm chương trình xuất ra kết quả không như dự định 

    Là lỗi khó tìm và khó sửa nhất 

  • 8/16/2019 4. Debugging

    4/19

    LT

    VB

    LT

    VB

    LỖI CÚ PHÁP 

    LẬP TRÌNH VISUAL BASIC 

    4

  • 8/16/2019 4. Debugging

    5/19

    LT

    VB

    LT

    VB

    LỖI RUN-TIME

    LẬP TRÌNH VISUAL BASIC 

    5

  • 8/16/2019 4. Debugging

    6/19

    LT

    VB

    LT

    VB

    LỖI LOGIC 

    LẬP TRÌNH VISUAL BASIC 

    6

  • 8/16/2019 4. Debugging

    7/19

    LT

    VB

    LT

    VB

    CÁC LỖI THÔNG DỤNG 

    LẬP TRÌNH VISUAL BASIC 

    7 Mã Thông báo Lý do

    5 Procedure call or argument is not

    valid, hay

    Invalid procedure call

    Phần nào đó trong lời gọi thủ tụcbị lỗi. Kiểm tra lại các đối số của

    thủ tục. 

    6 Overflow Biến nhận giá trị lớn hơn giá trị

    giới hạn của kiểu dữ liệu mà nó

    được gán. 

    9 Subscript out of range Chỉ số của mảng không hợp lệ vì

    nó vượt ngoài miền chỉ số cho

    phép của mảng. 

    11 Division by zero Một biến hoặc biểu thức được sửdụng như một số bị chia có giá trị

    0.

    13 Type mismatch Một biến đang được gán sang

    một kiểu giá trị khác theo cách

    không hợp lệ. 

  • 8/16/2019 4. Debugging

    8/19

    LT

    VB

    LT

    VB

    CÁC LỖI THÔNG DỤNG 

    LẬP TRÌNH VISUAL BASIC 

    8 Mã Thông báo Lý do

    35 Sub or Function not defined Sub hoặc Function đang sử dụngchưa được định nghĩa. Xem lại

    tên Sub (Function) và danh sách

    đối số (nếu có). 

    422 Property not found Thuộc tính của đối tượng không

    được định nghĩa. Kiểm tra lại tên

    của đối tượng. 

    423 Property or method not found Thuộc tính hay phương thức của

    đối tượng không được định

    nghĩa. Kiểm tra lại tên của đốitượng. 

    424 Object required Tham chiếu đến thuộc tính hay

    phương thức của một đối tượng

    chưa được khai báo. Kiểm tra lại

    tên của đối tượng. 

  • 8/16/2019 4. Debugging

    9/19

    LT

    VB

    LT

    VB

    THIẾT LẬP BREAK -POINT

    LẬP TRÌNH VISUAL BASIC 

    9

    Chọn dòng lệnh cầnthiết lập BreakPoint và  Nhấn F9 hoặc 

    Click biểu tượng Click vào lề trái của

    màn hình soạn thảo mã 

    Chương trình khi thực

    thi sẽ dừng tại dòng cóBreakPoint mà nó gặpđầu tiên. 

  • 8/16/2019 4. Debugging

    10/19

    LT

    VB

    LT

    VB

    DEBUGGING TOOLBAR

    LẬP TRÌNH VISUAL BASIC 

    10

    Nhấp vào View > Toolbars > Debug 

    “Action” Buttons 

    RunPause

    Stop

    “Flow” Buttons 

    Breakpoint toggleStep Into

    Step Over

    Step Out

    “Window” Buttons 

    Locals WindowImmediate Window

    Watch Window

    Quick Watch

    Call Stack Window

  • 8/16/2019 4. Debugging

    11/19

    LT

    VB

    LT

    VB

    DEBUGGING MENU

    LẬP TRÌNH VISUAL BASIC 

    11

  • 8/16/2019 4. Debugging

    12/19

    LT

    VB

    LT

    VB

    THỰC THI TỪNG DÒNG LỆNH 

    LẬP TRÌNH VISUAL BASIC 

    12

    Step Into [F8]

    Thực thi dòng lệnh hiện tại và đi đến dòng kế tiếp 

    Step Over [Shift F8]

    Sử dụng cho dòng lệnh gọi thủ tục (hàm) để thựchiện qua tất cả các lệnh trong chúng một lần 

    Step Out [Ctrl Shift F8]

    Thực hiện thủ tục (hàm) hiện tại và đi đến dònglệnh sau lời gọi thủ tục (hàm) này. 

  • 8/16/2019 4. Debugging

    13/19

    LT

    VB

    LT

    VB

    WATCH WINDOW

    LẬP TRÌNH VISUAL BASIC 

    13

    Vào Debug > Add Watch: Xem giá trị biến,biểu thức

  • 8/16/2019 4. Debugging

    14/19

    LT

    VB

    LT

    VB

    QUICH WATCH

    LẬP TRÌNH VISUAL BASIC 

    14

    Chọn (bôi đen) biến, biểu thức cần xem giá trịvà nhấn Debug > Quick Watch 

  • 8/16/2019 4. Debugging

    15/19

    LT

    VB

    LT

    VB

    IMMEDIATE WINDOW

    LẬP TRÌNH VISUAL BASIC 

    15

    Dùng Immediate Window, ta có thể xem giá trịcủa một biến hoặc biểu thức Cú pháp: ?  

    Ví dụ: ? a, ? a + b 

  • 8/16/2019 4. Debugging

    16/19

    LT

    VB

    LT

    VB

    IMMEDIATE WINDOW

    LẬP TRÌNH VISUAL BASIC 

    16

    Dùng Immediate Window, ta cũng có thể gánlại giá trị cho một biến Cú pháp: =  

    Ví dụ: a = 4 

  • 8/16/2019 4. Debugging

    17/19

    LT

    VB

    LT

    VB

    LOCALS WINDOW

    LẬP TRÌNH VISUAL BASIC 

    17

    Dùng Locals Window để xem tất cả các biến 

  • 8/16/2019 4. Debugging

    18/19

    LT

    VB

    LT

    VB

    CALL STACK

    LẬP TRÌNH VISUAL BASIC 

    18

    Call Stack

    Window

    cho phép

    ta lần theochuỗi lờigọi thủ tục(hàm) dễdàng

  • 8/16/2019 4. Debugging

    19/19

    LT

    VB

    LT

    VB

    TỔNG KẾT 

    LẬP TRÌNH VISUAL BASIC 

    19

    Các loại lỗi  Các lỗi thông dụng trong Visual Basic  Thiết lập BreakPoint 

    Debugging Toolbar và Debugging Menu Thực thi từng dòng lệnh  Các màn hình sửa lỗi  Watch Window

    Immediate Window

    Locals Window

    Call Stack