Professional Documents
Culture Documents
NMLT Cac Loi Thuong Gap Trong VC6
NMLT Cac Loi Thuong Gap Trong VC6
I. GII THIU
Khi bin dch chng trnh (F7), ch ca s Build di, cc thng tin v li (errors) v
cnh bo (warnings) nu c s c lit k chi tit y:
V d trong hnh: dng mu vng l li, mu xanh l cnh bo. Con s pha trc mi
li/cnh bo cho bit s th t dng code xut hin li/cnh bo ( y l dng th 9). Da
vo nhng k hiu cng nh thng tin v li/cnh bo ny, bn c th tm ra nhanh chng li
ca mnh nm u v cch sa nh th no.
Cc bc cn lm khi bin dch chng trnh c li:
1) Xem c bao nhiu li, bm F4 nhy n dng cha li u tin
2) c xem thng bo li l g, sa li
3) Bin dch li project (F7) ri quay li bc 1
Trang 1
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
II. MT S LI THNG GP
C2143: Syntax error : missing <du> before <cu lnh>
Li c php (syntax error), thng l thiu du ng ngoc, chm phy
V d: (9) missing ; before return => Thiu du ; trc cu lnh return dng 9. R sot
li trc dng 9, pht hin thiu du ; sau cu lnh printf(Hello World!)
C1010: unexpected end of file while looking for precompiled header directive
Li ny xut hin khi bn khng to Empty project m to mt project c sn (Hello World)
vi 2 file c to sn l StdAfx.h v StdAfx.cpp. Vi loi project ny, bn phi #include
StdAfx.h ngay u file .cpp cha hm main ca bn. Nu khng trnh bin dch s bo li nh
trn. Cch gii quyt:
Cch 1: Thm dng #include StdAfx.h vo ngay u file .cpp cha code chng
trnh ca bn
Trang 2
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
Trang 3
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
V d:
Dng 8 s dng bin giatri cha c khai bo
Dng 9 s dng hm abs cha c khai bo
Dng 10 s dng hm Xuat cha c khai bo
Cch gii quyt: thm vo cc khai bo thch hp (khai bo hm abs c t trong math.h)
Trang 4
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
Trang 5
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
Trang 6
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
III. BI TP P DNG
1. Thng k tng s li v chi tit cc li khi bin dch project MyErrors, cho bit
ngha v cch sa tng li. (Lu : c mt s li khng lit k trn, cc bn t tm
hiu). Sa li cc li (sau khi sa c th pht sinh li mi, cn thng k cho ti khi
no bin dch khng cn li). V d:
STT Li ngha Sa
1 error C2628: void i sau SINHVIEN l Thm du ; vo cui khai bo
SINHVIEN followed by khng hp l, c th bn struct nh sau:
void is illegal (did you qun du ; sau struct SINHVIEN
forget a ;?) SINHVIEN {
char ten[20];
char mssv[7];
float diem;
};
2
2. Sau khi chng trnh ht li, chy th chng trnh vi thng s nh sau v ghi li
kt qu chy ca 2 hm TimSVTrungTen v TimSVTrungDiem
S lng sinh vin: 4
Sinh vin 1: Nguyen Van An 07DB999 10
Sinh vin 2: Nguyen Thanh Son 07DB998 5
Sinh vin 3: Nguyen Van An 07DB997 4.5
Sinh vin 4: Nguyen Van An 07DB996 5
3. Hy debug chng trnh v lit k cc tham s quan st trong tng bc Debug ca
hm TimSVTrungTen v TimSVTrungDiem
Trang 7
Hng dn thc hnh: Nhp mn lp trnh Lp 07DB_A/B
C th:
Debug hm TimSVTrungTen
flag 0 0 0
i 0 0 0
j 1 2 3
sv_array[i].ten 0x0012ff1c a
sv_array[j].ten 0x0012ff3c a
Tng t cho hm TimSVTrungDiem
4. T bng lit k cu 3, hy cho bit hm TimSVTrungTen v TimSVTrungDiem
lm g? (tham s u vo l g? Kt qu u ra l g? Cc bin flag, i, j c ngha g?)
5. Cu 2 cho kt qu ng hay sai? Nu sai, hy cho bit li sai nm u? xut cch
sa nu c th.
6. Theo bn, chng trnh cn c th tim n nhng li no na hay khng? Nu c hy
nu ra c th l do v cch sa.
# Np bi: Bi lm bng file Word, t tn file l MSSV.doc (V d: 07DB333.doc); ghi
r h tn, MSSV, lp, ca hc vo u bi lm (V d ca hc: sng th 5, PM2), ln lt tr
li tng cu hi. Np bi ln Moodle (chung 1 link duy nht cho cc ca)
# Thi hn: 1 tun [t ngy 22/02/2008 n 23h55 ngy 29/02/2008]
# im cng: khng bt buc np, bi np s tnh l bi tp cng im (phi lm t nht 5
cu)
# im tr: cc bi lm ging nhau (>70%) s c tr 1 im vo bi thi cui k.
Trang 8