Posts

Showing posts from February, 2018

Lỗi Trôi lệnh khi nhập xuất xâu và số bằng File trong C.

Image
•  Khi  nhập / xuất từ file: Số nguyên và Xâu kí tự . – Cần xử dụng các Hàm : • fscanf ( ) ; để đọc số nguyên từ file, • fgets ( ) ; để đọc chuỗi kí tự từ file • • – Tuy nhiên , Giống như trong nhập xuất từ bàn phím, với một xâu và số liên tiếp , Hiện tượng trôi lệnh xảy ra , yêu cầu phải khắc phục. với nhập xuất từ bàn phím, ta sử dụng      fflush (stdin);  để khắc phục tình trạng trên. Tuy nhiên, với nhập/xuất bằng File, thì không thể làm được. Bởi vậy cần dùng 1 thủ thuật mới. Lấy một ví dụ để dễ dàng hình dung:                                    ví dụ với file nhập thông tin của 1 sinh viên. Với ví dụ trên, có thể nhiều người sẽ code như sau:   Kết quả khi chạy code cho thấy: Xâu MaSV không có giá trị, Tên sinh viên thì lại là Mã sinh viên        ...

Lập Trình C: Hàm lặp n lần một xâu bất kỳ ( hàm trả về 1 xâu kí tự là kết quả )

Image
ví dụ:  repeat (Hi, 3) ----> HiHiHi Hàm như sau: trường hợp này dùng con trỏ *src vì khi truyền vào không xác định số phần tử của xâu.  tiếp đó: char *s = (char *) malloc (a*sizeof (char)); để khai báo ô nhớ lưu dữ liệu cho con trỏ S , làm vậy để có thể thao tác dữ liệu trực tiếp với con trỏ S này. Tiếp đó kiểu dữ liệu trả về của hàm cũng là 1 con trỏ, làm vậy, sẽ không cần xác định số kí tự tối đa của xâu kết quả lặp S  , Như vậy sẽ tiết kiệm bộ nhớ đồng thời làm code bớt phức tạp về mặt câu lệnh. mọi thắc mắc xin để lại Comment