Search
 
 

Display results as :
 


Rechercher Advanced Search

Latest topics
» NewBlueFx TotalFX Windows-FL | 1.11 GB
Tue Dec 17, 2013 12:42 pm by titquarra

» NewBlueFx TotalFX Windows-FL | 1.11 GB
Tue Dec 17, 2013 12:42 pm by titquarra

» Celebrity.Sex.Tape.UNCUT.&.UNRATED.2012.720p.BRrip.x264.YIFY.mp4
Tue Dec 17, 2013 8:32 am by titquarra

» Maya Autodesk Personal Learning Edition 8.5
Tue Dec 17, 2013 7:47 am by titquarra

» Tuyệt Kỹ Đong Giai Chân Kinh (tuyệt Kỹ cua trai)
Thu Aug 23, 2012 5:38 am by Admin

» Tuyệt kỹ cua giai
Thu Aug 23, 2012 5:36 am by Admin

» NETCAT.........
Mon Aug 13, 2012 6:35 am by Admin

» Bảo mật CSDL bằng phương pháp mã hóa.
Tue Apr 17, 2012 10:04 pm by Admin

» Hàm mã hóa MD5 bằng JavaScript
Tue Apr 17, 2012 10:03 pm by Admin

Shopmotion


Affiliates
free forum


SỬ DỤNG CÁC CÔNG CỤ DEBUG TRONG MÔI TRƯỜNG BORLAND C++

View previous topic View next topic Go down

SỬ DỤNG CÁC CÔNG CỤ DEBUG TRONG MÔI TRƯỜNG BORLAND C++

Post  Admin on Thu Jun 09, 2011 3:46 am

1. CHẠY CHƯƠNG TRÌNH TỪNG BƯỚC.
Chạy từng bước 1 chương trình là thi hành từng dòng lệnh của chương trình. Có 2 cách chạy chương trình từng bước:
Chạy từng dòng lệnh và đi vào bên trong hàm _ Phím tắt F7
Mỗi lần nhấn F7 sẽ thực hiện lệnh tại dòng có vệt sáng và di chuyển vệt sáng đến dòng kế tiếp. Khi dòng lệnh là 1 lời gọi đến 1 hàm thì vệt sáng sẽ dời đến dòng lệnh đầu tiên trong hàm đó.
Sử dụng phím tắt này khi cần chạy chương trình từng bước để phát hiện lỗi chi tiết bên trong 1 hàm.
Chạy từng dòng lệnh và thực hiện lời gọi hàm mà không đi vào bên trong hàm đó_ Phím tắt F8.
Mỗi lần nhấn F8 sẽ thực hiện lệnh tại dòng có vệt sáng và di chuyển vệt sáng đến dòng kế tiếp. Khi dòng lệnh là 1 lời gọi đến 1 hàm thì vệt sáng sẽ dời đến dòng lệnh kế tiếp theo lời gọi hàm đó, mà không đi vào chi tiết từng lệnh trong hàm.
Sử dụng phím này khi cần chạy từng bước mà không cần chạy chi tiết bên trong 1 hàm vì biết chắc chắn hàm đó không có lỗi.

2. CHẠY CHƯƠNG TRÌNH ĐẾN VỊ TRÍ CON TRỎ _ SỬ DỤNG PHÍM TẮT F4
Khi cần thi hành một đoạn lệnh mà không cần phải nhấn phím (F7/F8) để chạy từng lệnh ta sử dụng chức năng chạy chương trình đế khi gặp dòng lệnh nơi con trỏ soạnn thảo đang đứng.
Khi biết chắc 1 đoạn lệnh không có lỗi, ta di chuyển con trỏ soạn thảo đến nơi "nghi ngờ" có lỗi và nhấn F4; chương trình sẽ được thực hiện cho đến dòng lệnh có con trỏ soạn thảo. Sau đó ta tiếp tục sử dụng phím F7/F8 để debug.

3. ĐIỂM DỪNG_PHÍM TẮT CTRL+F8
Điểm dừng là nơi chương trình sẽ dừng lại khi thỏa mãn điều kiện đi kèm với điểm dừng đó. Có 2 loại điểm dừng:

3.1 Điểm dừng vô điều kiện:
Chương trình sẽ dừng khi gặp lệnh có điểm dừng này mà không kiểm tra một điều kiện gì. Để tạo điểm dừng loại này ta di chuyển con trỏ đến dòng lệnh cần dừng rồi nhấn tổ hợp phím Ctrl+F8. Một vệt sáng màu đỏ sẽ xuất hiện báo cho biết đây là 1 điểm dừng.

3.2 Điểm dừng có điều kiện
Chương trình sẽ dừng lại khi gặp lệnh có điểm dừng mà điều kiện đi kèm với điểm dừng đó được thỏa. Để tạo điểm dừng loại này, có 2 cách:
Cách 1: tạo điểm dừng vô điều kiện rồi điều chỉnh nó trong menu Debug/Breakpoint -> danh sách các điểm dừng, chọn điểm dừng cần hiệu chỉnh rồi nhấn Edit, hiệu chỉnh xong nhấn Modify.

Cách 2: vào thẳng menu Debug/Breakpoint/Edit, rồi tạo xong nhấn New.
Trong khi tạo điểm dừng có một tham số Pass Count cho phép chỉ định số lần bỏ qua không dừng khi gặp đúng điều kiện đó.

Ví dụ: tại dòng lệnh sau ta đặt điểm dừng với Condition là i = 4, Pass Count = 2:
…………………………….
I = (10*k)%5;  Chương trình dừng tại câu lệnh này khi giá trị i = 4 đã xãy ra 2 lần
…………………………….
Khi chương trình chạy qua dòng lệnh này đầu tiên, nếu điều kiện i=4 thỏa mãn, chương trình vẫn không dừng, lần thứ 2 vẫn không dừng và chỉ dừng lại ở lần thứ 3. Nghĩa là i=4 đã xãy ra 3 lần.
Sử dụng điểm dừng khi cần "bắt" chương trình dừng tại đầu đoạn code "nghi ngờ" có lỗi để debug.
Ghi chú: Để bỏ điểm dừng, di chuyển con trỏ soạn thảo đến dòng có vệt đỏ và nhấn Ctrl+F8

4. XEM GIÁ TRỊ CỦA BIẾN/BIỂU THỨC TRONG KHI CHẠY CHƯƠNG TRÌNH _ PHÍM CTRL+F7
Trong quá trình chạy từng bước 1 chương trình sử dụng các phím: F7/F8/F4/Điểm dừng, ta có thể đặt các biến/ biểu thức vào cửa sổ Watch để tiện theo dõi giá trị của chúng.

Có hai cách để thêm một biến/biểu thức vào cửa sổ Watch:
Cách 1: Di chuyển con trỏ soạn thảo đến biến/biểu thức và nhấn Ctrl+F7.
Nếu cần theo dõi biến, nhấn Enter.
Nếu cần theo dõi biểu thức, nhấn nhiều lần phím -> và <- để chọn biểu thức hoặc tự thay đổi biểu thức rồi nhấn Enter.
Cách 2: Đứng trong cửa sổ Watch nhấn Insert để thêm 1 biến/biểu thức, nhập biến/biểu thức có trong cửa sổ bằng phím Enter/Delete.

Định dạng cho biến/biểu thức:

Công thức:
Expression,[repeat]<<format characters>>
Trong đó:
Expression: có thể là biến hoặc biểu thức.
Repeat: số lần lặp – áp dụng cho dữ liệu dạng mảng.
Format characters: định dạng các dạng sau đây:
C: ký tự
D : số nguyên.
F(n): số thực, n là số chữ số sau dấu thập phân (không bắt buộc phải có)
H/X: số nguyên dạng thập lục.
M: hiện giá trị trong bộ nhớ từng byte một.
P : hiện dạng con trỏ far segment:offset
R : hiện các thành phần của một struct, union.
S : hiện ký tự điều khiển (mã ASCII 0..31) dạng ‘\n’

Ví dụ: chẳng hạn có các khai báo như sau:

Code:
int k, a[20];
struct SV{
char HoTen[40];
int MSSV;
}sv[100];

khi đó, trong cửa sổ Watch nhập vào:
a,10h: hiện giá trị 10 phần tử đầu tiên của mảng ở dạng Hexa.
sv[1],r: hiện tên và giá trị tương ứng của từng thành phần trong struct SV của sv[1].

5. XEM GIÁ TRỊ CỦA BIẾN/BIỂU THỨC – THAY ĐỔI GIÁ TRỊ CỦA BIẾN TRONG KHI CHẠY - PHÍM TẮT CTRL+F4.
Nếu cần xem giá trị của một biến/biểu thức trong khi chạy từng bước một chương trình, hoặc tính toán giá trị một biểu thức trong lúc viết chương trình, thậm chí thay đổi giá trị biến một cách thủ công trong lúc chạy từng bước một chương trình ta sử dụng của sổ Evaluate and Modify thông qua phím tắt Ctrl+F4.
Có 2 cách để nhập biến/biểu thức vào cửa sổ Evaluate and Modify:
Cách 1: Di chuyển con trỏ soạn thảo đến biến/biểu thức và nhấn Ctrl+F4.
Nếu chấp nhận biến đó, nhấn Enter.
Nếu cần theo dõi biểu thức, nhấn nhiều lần phím -> và <- để chọn biểu thức.
Cách 2: nhấn Ctrl+F4 ở đâu cũng được, rồi nhập biến/biểu thức vào.
Muốn định dạng kết quả xuất hiện của biến/biểu thức thì xem phần định dạng trong mục 4.

6. THEO VẾT MỘT BIẾN/LỚP – PHÍM TẮT ALT+F4(CHỈ CÓ TRONG BORLAND C++3.1)
Trong môi trường BC++3.1 có một công cụ rất tốt để debug khi viết các chương trình có sử dụng con trỏ (danh sách liên kết, cây…), các đối tượng trong lập trình hướng đối tượng.
Có 2 cách để sử dụng chức năng này (chú ý chỉ dùng trong khi đang chạy từng bước một chương trình):
Cách 1: Di chuyển con trỏ soạn thảo đến biến nhấn Alt+F4. Nếu chấp nhận biến/lớp đó, nhấn Enter.
Cách 2: nhấn Alt+F4 ở đâu cũng được, rồi nhập tên biến/lớp vào.
Trong cửa sổ Inspect, ta sẽ có toàn bộ thông tin về biến/lớp, có thể thay đổi giá trị như ở cửa sổ Evaluate and Modify bằng cách nhấn Alt+M. Dùng các phím di chuyển như Tab,->,<- để chọn đối tượng trong cửa sổ, và nhấn Enter để "Inspect" đối tượng đó nếu dòng trạng thái cuối màn hình có: Inspect. Nhấn Alt+I để giới hạn khoảng cần xem (thường áp dụng với mảng, con trỏ): vị trí bắt đầu, số phần tử.

7. NGĂN XẾP CÁC LỜI GỌI HÀM CALL STACK_PHÍM TẮT CTRL+F3
Trong lúc chạy từng bước một chương trình, nhất là các chương trình có nhiều lời gọi hàm lồng nhau, các chương trình có đệ quy, để biết chương trình đang chạy trong hàm nào ta nhấn Ctrl+F3 để vào cửa sổ Call Stack. Trong cửa sổ này các lời gọi hàm được hiển thị theo dạng ngăn xếp, hàm gọi lâu nhất sẽ ở dưới cùng, hàm hiện hành sẽ ở trên cùng, các tham số truyền vào cho hàm cũng được hiển thị ở đây.

8. NGẮT QUÁ TRÌNH CHẠY TỪNG BƯỚC_PHÍM TẮT CTRL+F2
Ta nhấn tổ hợp phím này trong lúc chạy từng bước 1 chương trình để ngắt debug và trở về trạng thái soạn thảo (vệt sáng biến mất)

9. CÁC PHÍM TẮT TIỆN DỤNG:
9.1 Undo thao tác trước/làm lại thao tác trước khi undo_Phím Alt+Backspace - Alt+Shift+ Backspace
Chức năng này rất quan trọng, giúp ta lấy lại những đoạn code trước đó mà do vô tình hay cố ý đã thay đổi, thêm bớt, thậm chí xóa đi. Ta chỉ cần nhấn Alt+Backspace liên tục cho đến khi đoạn code cần tìm hiện ra. Nếu cần làm lại thao tác đã thực hiện trước khi nhấn Alt+ Backspace ta nhấn Alt+Shift+ Backspace.

9.2 Kiểm tra đã đủ dấu: {,},[, ],(,) hay chưa: Phím Ctrl+Q+] hoặc Ctrl+Q+[
Đây là phím rất tiện dụng để phát hiện các lỗi thiếu các dấu ngoặc tương ứng. Di chuyển con trỏ soạn thảo đến một trong các loại dấu ngoặc trên rồi nhấn một trong 2 tổ hợp phím, nếu con trỏ soạn thảo:
Không di chuyển -> thiếu dấu ngoặc tương ứng hoặc thừa dấu tại vị trí con trỏ đang đứng.
Di chuyển đến một dấu ngoặc, nhưng sai -> thiếu dấu ngoặc tương ứng.
Lưu ý: chức năng này chỉ có trong BC++3.1 trở đi.

9.3 Tìm kiếm/Tìm kiếm và thay thế/Lặp lại thao tác tìm kiếm trước đó: Phím Ctrl+Q+F/ Ctrl+Q+A/ Ctrl+L
Để tìm một đoạn text trong chương trình, ta nhấn Ctrl+Q+F (thao tác nhập tương tự cửa sổ Evaluate and Modify). Sau đó chọn thêm một số thông số:
[] Case – sensitive : có phân biệt chữ hoa/ chữ thường.
[] Whole words only: tìm đoạn text đứng độc lập.
() Global: tìm toàn bộ văn bản.
() Selected text: tìm trong khối văn bản đánh dấu.
() From cursor: tìm từ vị trí con trỏ soạn thảo.
() Entire scope: tìm từ đầu đến cuối.
() Forward : tìm xuôi.
() Backward: tìm ngược.
Để tìm và thay thế ta nhấn Ctrl+Q+A, nhập các thông tin như phần trên, thêm vào đoạn text sẽ thay thế đoạn text tìm thấy, chỉ định thông số:
[] Prompt on replace: nhắc thay thế mỗi khi tìm thấy.
Để tìm và thay thế tất cả chọn Change All thay vì chọn OK.
Để lặp lại thao tác Tìm/Tìm thay thế lần cuối cùng ta nhấn Ctrl+L.

9.4 Đến thông báo lỗi trước đó hoặc kế tiếp. Phím Alt+F7/ Alt+F8
Sau khi dịch có lỗi, ta dùng 2 phím này để duyệt qua từng lỗi mà không cần dịch lại. Lưu ý nếu gặp các lỗi phát sinh do ảnh hưởng lẫn nhau thì nên dịch lại để nhận thông báo lỗi mới.

9.5 Xem cửa sổ kết quả_Phím Alt+F5.
Nhấn phím này để xem kết quả xuất ra ở màn hình DOS. Xem xong nhấn Enter để trở về màn hình soạn thảo. Nếu muốn hiện cửa sổ này trong môi trường soạn thảo nhấn Alt+W rồi nhấn O.
9.6 Danh sách các cửa sổ: Phím Alt+0
Hiện danh sách các cửa sổ đang mở để chọn cửa sổ làm việc (active). Trong danh sách này có cả các file đã đóng. Chú ý, thường có những file được mở từ ổ A: mà không đóng, hay gây ra thông báo lỗi đĩa mềm -> vào đây xoá những cửa sổ đó đi.

9.7 Sắp xếp hiện hết các cửa sổ. Phím Alt+W, rồi nhấn T.
Tất cả các cửa sổ sẽ được hiện lên màn hình.

9.8 Ngắt chương trình bị lặp/treo. Phím Ctrl+Break, rồi nhấn Enter 2 lần.
Khi chương trình bị lặp không lối thoát, hoặc bị treo ta nhấn Ctrl+Break sau đó nhấn Enter 2 lần để trở về màn hình soạn thảo.

9.9 Chọn cửa sổ làm việc. Phím Alt+n(n=1…9)
Mỗi cửa sổ đều được đánh một con số ở góc trên bên phải (tất nhiên ngoại trừ các cửa sổ được mở lần thứ 10 trở lên vì chỉ có 9 con số). Ở một thời điểm chỉ có một cửa sổ gọi là cửa sổ làm việc (active) – đó là cửa sổ có đường biên là nét đôi ===. Các cửa sổ không active sẽ được vẽ bằng nét đơn _____. Để chọn cửa sổ thứ 5 ta nhấn Alt+5.

9.10 Di chuyển và thay đổi kích thước cửa sổ. Phím Ctrl+F5
Để di chuyển cửa sổ làm việc ta nhấn Ctrl+F5, dùng các phím dịch chuyển để di chuyển cửa sổ, xong thì nhấn Enter để trở lại chế độ soạn thảo. Nếu nhấn Shift+phím dịch chuyển thì sẽ có dãn cửa sổ.

9.11 Đánh dấu/sao chép/cắt/dán khối. Phím Shift + Dịch chuyển/Ctrl+Insert/Shift + Delete/Shift+Insert.
Đánh dấu khối: nhấn giữ Shift, dùng các phím dịch chuyển: ->, <-, Home, End, PgUp, PgDn (Có thể kết hợp với Ctrl) để xác định khối văn bản.
Sao chép: sau khi đánh dấu nhấn Ctrl+Insert để chép khối văn bản vào ClipBoard của BC.
Cắt: sau khi đánh dấu khối nhấn Shift + Delete để cắt khối văn bản vào ClipBoard của BC, khối văn bản sẽ bị xóa luôn khỏi màn hình.
Dán: nhấn Shift+Insert để chép khối văn bản trong ClipBoard vào cửa sổ văn bản tại dấu nháy.

Admin
Admin

Tổng số bài gửi : 782
Join date : 2009-08-15

View user profile http://hackis.forumotion.com

Back to top Go down

View previous topic View next topic Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum