Danh mục

Hướng dẫn những thao tác cơ bản khi gỡ rối (debug) một chương trình trong môi trường Visual Studio

Số trang: 8      Loại file: pdf      Dung lượng: 240.42 KB      Lượt xem: 8      Lượt tải: 0    
Jamona

Phí lưu trữ: miễn phí Tải xuống file đầy đủ (8 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Để học được một ngôn ngữ lập trình, đối với những người mới bắt đầu, điều đặc biệt cần thiết là phải biết cách "gỡ rối" (debug) chương trình. Bài viết này sẽ cố gắng giúp những người mới bắt đầu biết cách làm sao để làm điều này một cách hiệu quả trong môi trường Visual Studio. "Chạy" chương trình Có thể hiểu nôm na, một chương trình sẽ chạy bắt đầu từ dòng lệnh đầu tiên sau dấu { của hàm main và sẽ chấm dứt sau khi thực hiện xong lệnh cuối cùng trước dấu } của...
Nội dung trích xuất từ tài liệu:
Hướng dẫn những thao tác cơ bản khi gỡ rối (debug) một chương trình trong môi trường Visual StudioHướng dẫn những thao tác cơ bản khi gỡ rối (debug) một chươngtrình trong môi trường Visual Studio.Để học được một ngôn ngữ lập trình, đối với những người mới bắt đầu, điềuđặc biệt cần thiết là phải biết cách gỡ rối (debug) chương trình. Bài viếtnày sẽ cố gắng giúp những người mới bắt đầu biết cách làm sao để làm điềunày một cách hiệu quả trong môi trường Visual Studio.Chạy chương trìnhCó thể hiểu nôm na, một chương trình sẽ chạy bắt đầu từ dòng lệnh đầu tiênsau dấu { của hàm main và sẽ chấm dứt sau khi thực hiện xong lệnh cuốicùng trước dấu } của hàm main. Trong quá trình chạy, có thể có những đoạnđường thẳng, những đoạn đường rẽ (lệnh rẽ nhánh như if, switch),những đoạn đường vòng (lệnh lặp như while, do..while,..), những đoạnđường nhỏ hơn (hàm).Điểm dừng chương trình (breakpoint)Như vậy, để có thể gỡ rối được chương trình, trước tiên phải biết được đoạnrối của nó, tức chương trình bị lỗi ở đoạn nào. Visual Studio (cũng như hầuhết các IDE khác) đều cho phép lập trình viên tạm dừng chương trình haycho chương trình chạy từ từ tại một số đoạn nào đó. Vị trí mà chúng tamuốn chương trình tạm dừng để chúng ta có thể xem cho kỹ cục rối nhưthế nào (để mà gỡ) và có thể cho nó chạy từ từ để xem kỹ từng múi rối(xem giá trị các biến và mã xử lý chúng) được gọi là điểm dừng chươngtrình hay breakpoint. Từ bây giờ sẽ gọi breakpoint cho tiện.Cửa sổ Locals, cửa sổ WatchHai cửa sổ là nơi mà ta có thể xem giá trị các biến khi ta đang debug chươngtrình đang. Tuy nhiên, cửa sổ Locals là nơi chứatất cả các biến trong phạmvi hiện tại còn cửa sổ Watch là nơi ta có thể xem bất kỳ biết nào, biểu thứcnào hay xem bất kỳ kiểu nào ta mong muốn.B. Làm việc với BreakpointTạo một breakpointThực hiện 1 trong 3 cách sau:Cách 1: Di chuyển con nháy đến hàng tương ứng sau đóchọn Debug → Toggle BreakpointCách 2: Di chuyển con nháy đến hàng tương ứng sau đó nhấn phím F9Cách 3: Kích chuột vào cột mốc tại hàng tương ứngNếu thao tác thành công, tại hàng tương ứng trong cột mốc sẽ có một núttròn màu đỏ như trong hàng 42 và 48 của hình 1. Hình 1Hủy một breakpointĐể hủy 1 breakpoint, bạn chỉ việc thực hiện thao tác như khi tạo 1breakpoint ở trên.Quản lý danh sách breakpointBạn có thể mở cửa sổ Breakpoints để quản lý các breakpoint đang có bằngcách: chọn Debug → Windows → Breakpoints (hình 2). Cửa sổ Breakpointssẽ hiện ra như ở hình 1. Hình 2Kích hoạt/thôi kích hoạt các breakpointTrong cửa sổ Breakpoints, ô chọn phía trái của mỗi breakpoint chính làthông tin breakpoint hiện tại có được kích hoạt hay không. Nếu không đượckích hoạt thì chương trình sẽ không dừng tại breakpoint này (coi như nókhông tồn tại).Có thể kích vào ô chọn này để kích hoạt hay thôi kích hoạt các breakpoint.Nếu muốn kích hoạt hay thôi kích hoạt tất cả các breakpoint, kích vào biểutượng .Hủy cùng lúc nhiều breakpointTrong cửa sổ Breakpoints, bạn có thể: Xóa cùng lúc nhiều breakpoint bằng cách đè phím Ctrl và kích chuộtlên các breakpoint tương ứng sau đó kích vào nút . Xóa tất cả các breakpoint bằng cách kích vào nútTạo điểm dừng có điều kiện (conditional breakpoint)Thông thường, chương trình sẽ dừng tại hàng nào có đặt breakpoint. Tuynhiên, nếu hàng này nằm trong một vòng lặp (một hàm đệ quy) và chúng talại chỉ muốn chương trình sẽ dừng tại hàng này trong một vòng lặp (hay mộtlần gọi đệ quy) cụ thể nào đó thì có 2 cách để làm được điều này: Tạo 1 breakpoint tại hàng muốn dừng sau đó cứ nhấn F5 cho đến khi1.chương trình chạy đến vòng lặp (hay lần gọi đệ quy) mong muốn. Cách nàyrất mất công, ví dụ nếu ta muốn dừng tại vòng lặp thứ 99 thì phải nhấn F5 ítnhất 98 lần. (tiện lợi hơn) Tạo 1 breakpoint tại hàng muốn dừng sau đó kích phải2.tại breakpoint này và chọn Condition (hình 3). Cửa sổ Breakpoint Conditionxuất hiện (hình 3), sau đó bạn chỉ việc nhập điều kiện vào vùng condition.Như ví dụ trong hình 3, tôi muốn chương trình dừng khi i=5 và j=3. Hình 3C. Xem giá trị các biến khi debugCửa sổ LocalsĐể mở cửa sổ Locals, bạn nhấn tổ hợp phím Ctrl+D,L (đè phím Ctrl,gõ D sau đó gõ tiếp L) hoặc chọn Debug → Windows →Locals (xem hình 4) Hình 4Cửa sổ WatchĐể mở cửa sổ Locals, bạn nhấn tổ hợp phím Ctrl+D,W (đè phím Ctrl,gõ D sau đó gõ tiếp W) hoặc chọn Debug → Windows →Watch → Watch1 (xem hình 4). Một chú ý là có đến 4 cửa sổ Watch nên trường hợp có quánhiều biến cần theo dõi thì có thể mở tiếp một số cửa sổ Watch còn lại đểxem.D. Cho chương trình chạy từ từChạy từng lệnhCách tiện nhất để chạy từng lệnh là sử dụng phím nóng. Có hai hình thứcchạy từng lệnh: Chạy lướt qua hàm (nhấn phím F10 hoặc chọn Debug → Step Over):1.nếu dòng hiện tại có lời gọi đến một nào nào đó trong chương trình thì nó sẽlướt qua hàm này, nghĩa là nó sẽ chạy nhanh qua chứ không đi vào đểchạy từng lệnh trong hàm này. Đi vào hàm (nhấn phím F11 hoặc chọn Debug → Step Into): nếu dòng2.hiện tại có lời gọi đến một nào nào đó trong chương trình thì nó sẽ đi vào đểchạy từng lệnh trong hàm này.Ta dễ thấy rằng, trường hợp dòng hiện tại mà chương trình đang đứng khôngchứa lời gọi đến một hàm nào khác thì nhấn phímF10 hay F11 là như nhau.Chạy nhanh ra khỏi hàmTrường hợp muốn chạy nhanh ra khỏi hàm mà chương trình đang dừng lại,chỉ đơn giản nhấn tổ hợp phím Shift+F11 (đè phímShift và gõ phím F11)hoặc chọn Debug → Step Out.Dừng chương trìnhKhi đang debug chương trình, muốn sửa gì đó trong mã nguồn hay khôngmuốn chạy tiếp nữa thì bạn nhấn Shift+F5 (đè phímShift và gõ phím F5)hoặc chọn Debug → Stop Debugging để dừng chương trình.E. Một số phím nóng cần nhớ bắt đầu chạy chương trình chạy từng lệF ...

Tài liệu được xem nhiều: