Orsmforums

Chào mừng Khách ( Đăng nhập | Đăng kí )




Nhận định về các bài viết kiếm tiền Online trên VnExpress!

Cách Lấy Lại Tiền Nếu Lỡ Tin "Bà Mẹ 120 triệu/tháng"!

Cải tổ một số box trên forum www.cuasotinhoc.vn!
Sen Vang Education
> Những điều đơn giản mà thú vị trong lập trình
tansoncity
post Jan 26 2008, 02:18 PM
Bài viết #1


Adminnistrator
***

Nhóm: Admin danh dự
Bài viết: 453

Gia nhập vào: 21-March 03
Từ: Việt Nam
Thành viên thứ.: 2



Chào các bạn,
Lập trình viên đối với nhiều người là một nghề khá nhàm chán, chỉ biết code và code. Thực ra, mỗi lập trình viên đều có một kho những chuyện thú vị mà họ khám phá được trong lúc giải quyết những trở ngại gặp phải mỗi ngày. Đôi khi những điều mà bạn nghĩ là đúng bấy lâu nay, khi cần phải áp dụng lại đem đến những bất ngờ ngoài sức tưởng tượng 4.gif.

Câu chuyện về struct alignment:
Giả sử một ngày đẹp trời bạn được giao lập trình đọc/ghi một tập tin gồm nhiều record, mỗi record có cấu trúc như sau:
4 byte đầu chứa mã số sinh viên (kiểu int)
30 byte sau chứ tên sinh viên (kiểu char)
4 byte cuối chứa mã lớp (kiểu int).
Đọc/ghi tuần tự từng byte thì quá mất thời gian và bạn quyết định đọc toàn bộ file chỉ với 1 vài dòng lệnh. Đầu tiên, bạn khai báo:
CODE
typedef struct tagStudent {
       int studentID;
       char name[30];
       int classID;
} Student;

Sau đó, bạn đọc kích thước tập tin, chia cho sizeof(Student) để ra tổng số record rồi cấp phát một mảng có kiểu Student với số phần tử là số record đã tính được. Cuối cùng, bạn chỉ cần một dòng lệnh read là đưa luôn cả tập tin vào trong mảng.
Mọi việc thật suôn sẻ cho đến khi bạn viết xong chương trình và chạy thử với file sample mà sếp đưa. Hic, trật lất. Rà code đi rà code lại chẳng có gì sai hết mà kết quả thì cứ lung tung beng.
(còn tiếp)


--------------------
CPV Group
Passion, Vision and Action...
Go to the top of the page
 
+Quote Post

Gửi trong chủ đề này


Reply to this topicStart new topic


 

.::Phiên bản rút gọn::. Thời gian bây giờ là: 9th September 2010 - 08:51 AM
Our Sponsors

Hoc Anh Van Tai Nha

Hosting Mat Bao

Dịch vụ Kế toán, Kê khai thuế giá rẻ, trọn gói, uy tín, chất lượng cao
• Báo cáo VAT, TNDN, TNCN, BHXH, BHYT (tháng+quý+năm)
• Sổ sách, Chứng từ, Báo cáo tài chính (tháng+quý+năm)

Thiết kế Website, Domain, Hosting giá rẽ



Ao cuoi Sentosa

Forum Nguyen Hien

Lap dat Wifi

Forum ytuongsangtaovn.com

CSTH Radio Online