30.10.2014 Views

o_195h4n6al16jb186b1b2qs7fgssa.pdf

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

}<br />

else<br />

{<br />

printf("%d!?\n", number);<br />

atexit(bad_msg);<br />

exit(0);<br />

}<br />

}<br />

void good_msg(void)<br />

{<br />

printf("That's an excellent number\n");<br />

}<br />

void bad_msg(void)<br />

{<br />

printf("That's an awful number\n");<br />

}<br />

void end_msg(void)<br />

{<br />

printf("Now gocount something\n");<br />

}<br />

Input:<br />

With contents of UartIn.txt(used as stdininput for simulator):<br />

5<br />

Output:<br />

Enter your favorite number: 5<br />

Good Choice<br />

That's an excellent number<br />

Now go count something<br />

Input:<br />

With contents of UartIn.txt(used as stdininput for simulator):<br />

42<br />

Output:<br />

Enter your favorite number: 42<br />

42!?<br />

That's an awful number<br />

Now go count something<br />

atexit (Continued)<br />

dsPIC<br />

®<br />

printf ("String = \"% s \ "int =% ld \ n", a, x);<br />

x = atol (b);<br />

printf ("String = \"% s \ "int =% ld \ n", b, x);<br />

}<br />

Đầu ra:<br />

String = "-123.456" int = -123.456<br />

String = "2Number" int = 2<br />

bsearch<br />

Mô tả: Thực hiện tìm kiếm nhị phân<br />

Bao gồm:<br />

Nguyên mẫu: void * bsearch (const void * quan trọng, const void * cơ sở,<br />

nelem size_t, size_t size,<br />

int (* CMP) (const void * ck, const void * ce));<br />

Đối số: đối tượng quan trọng để tìm kiếm<br />

con trỏ cơ sở để bắt đầu tìm kiếm dữ liệu<br />

số nelem của các yếu tố<br />

kích thước kích thước của các yếu tố<br />

CMP con trỏ đến chức năng so sánh<br />

ck con trỏ đến chìa khóa cho việc tìm kiếm<br />

ce con trỏ đến phần tử được so sánh với phím.<br />

Quay trở lại giá trị: Trả về một con trỏ đến các đối tượng được tìm kiếm nếu tìm<br />

thấy; nếu không,<br />

trở về NULL.<br />

Bình luận: Giá trị trả về của hàm so sánh là 0 nếu ckis lớn hơn ce.<br />

Trong ví dụ sau, qsortis sử dụng để sắp xếp danh sách trước khi bsearch<br />

được gọi. bsearchrequires danh sách được sắp xếp theo<br />

chức năng so sánh. Đây compuses thứ tự tăng dần.<br />

atol (Tiếp theo)<br />

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

2004 Microchip Technology Inc DS51456B trang 277<br />

Ví dụ: # include / * Cho bsearch, qsort * /<br />

# include / * Cho printf, sizeof * /<br />

# xác định NUM 7<br />

int comp (const void * e1, const void * e2);<br />

int main (void)<br />

{<br />

int danh sách [NUM] = {35, 47,63, 25, 93, 16, 52};<br />

int x, y;<br />

int * r;

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

Saved successfully!

Ooh no, something went wrong!