30.10.2014 Views

o_195h4n6al16jb186b1b2qs7fgssa.pdf

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

®<br />

Language Tools Libraries<br />

DS51456B-page 266 2004 Microchip Technology Inc.<br />

Example: #include /* for ungetc, fgetc, */<br />

/* printf, fopen, fclose, */<br />

/* FILE, NULL, EOF */<br />

int main(void)<br />

{<br />

FILE *buf;<br />

char y, c;<br />

if ((buf = fopen("afile.txt", "r")) == NULL)<br />

printf("Cannot open afile.txt\n");<br />

else<br />

{<br />

y = fgetc(buf);<br />

while (y != EOF)<br />

{<br />

if (y == 'r')<br />

{<br />

c = ungetc(y, buf);<br />

if (c != EOF)<br />

{<br />

printf("2");<br />

y = fgetc(buf);<br />

}<br />

}<br />

printf("%c", y);<br />

y = fgetc(buf);<br />

}<br />

fclose(buf);<br />

}<br />

}<br />

Input:<br />

Contents of afile.txt(used as input):<br />

Short<br />

Longer string<br />

Output:<br />

Sho2rt<br />

Longe2r st2ring<br />

"Hoặc nhiều ký tự. \ N");<br />

}<br />

Đầu ra:<br />

Lỗi: chữ 'a' isnot một số nguyên.<br />

Lỗi: Yêu cầu 3 ormore ký tự.<br />

Thư viện chuẩn C với hàm toán học<br />

2004 Microchip Technology Inc DS51456B trang 269<br />

vsprintf<br />

Mô tả: In định dạng văn bản cho một chuỗi bằng cách sử dụng một danh sách<br />

đối số chiều dài biến<br />

Bao gồm:<br />

Nguyên mẫu: int vsprintf (char * s, char * format, va_list<br />

ap);<br />

Đối số: s chuỗi lưu trữ cho đầu ra<br />

định dạng kiểm soát chuỗi định dạng<br />

ap con trỏ đến một danh sách các đối số trở lại giá trị: Trả về số ký tự được lưu<br />

trữ trong sexcluding việc chấm dứt vô<br />

nhân vật.<br />

Ghi chú: Đối số định dạng có cú pháp tương tự và sử dụng nó có trong<br />

printf.<br />

Để truy cập vào danh sách đối số chiều dài biến, apvariable phải<br />

khởi tạo bởi các va_startand vĩ mô có thể được khởi tạo lại bởi<br />

cuộc gọi bổ sung cho va_arg. Điều này phải được thực hiện trước khi vsprintf<br />

hàm được gọi. Gọi va_endafter trở về chức năng. Để biết thêm<br />

chi tiết xem stdarg.h<br />

Ví dụ: # include / * Cho vsprintf, printf * /<br />

# include / * Cho va_start, * /<br />

/ * Va_list, va_end * /<br />

khoảng trống errmsg (const char * fmt, ...)<br />

{<br />

va_list ap;<br />

char buf [100];<br />

va_start (ap, fmt);<br />

vsprintf (buf, fmt, ap);<br />

va_end (ap);<br />

printf ("Lỗi:% s", buf);<br />

}<br />

int main (void)<br />

{<br />

int num = 3;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!