- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0

我的地盘我做主
该用户从未签到
 |
< ><FONT color=#ff0000>函数名: labs </FONT>
) D ?8 I( w0 i8 m用 法: long labs(long n); # c+ I, W4 R9 p( X
程序例: </P>
% w0 N W( A3 V# Q$ v! r! Y< ><FONT color=#0000ff>#include <STDIO.H>5 `* q# v0 \ h! p8 s8 D
#include <MATH.H></FONT></P>
% M5 N; T. r6 W' @* \< ><FONT color=#0000ff>int main(void) 7 h. K6 }8 d. |! J; o; C
{
5 k5 e9 v7 V( L/ b( Y" p9 B3 W Wlong result; + G5 W: ]2 V2 ?2 r- L5 ?% ~
long x = -12345678L; </FONT></P>
& d' @! |. I. k/ E, ]. E# l% O< ><FONT color=#0000ff>result= labs(x);
! d3 ]' w5 v- y, O/ i) f9 l4 R7 |printf("number: %ld abs value: %ld\n",
9 k8 e8 N1 [6 \0 ]% L0 d# e- Gx, result); </FONT></P>
) o: K- I, B) r7 J; i( _, l7 P< ><FONT color=#0000ff>return 0;
9 U( y5 F2 O2 C7 a} $ u! g% D1 d2 V1 V2 c* k( N
</FONT>! e% _$ n4 ^; A8 C0 d9 i X/ V
, n1 x q9 Q1 }</P>
4 k5 Z/ N$ a1 W& |3 U< ><FONT color=#ff0000>函数名: ldexp </FONT>
' I" M# `, `7 U ]( j( F( r) N4 Z功 能: 计算value*2的幂
, x9 v3 y! h' k/ i用 法: double ldexp(double value, int exp); 2 X! P# F! B3 Z& W& A
程序例: </P>
7 N0 A- p9 N! K) e" ^9 a7 ~< ><FONT color=#0000ff>#include <STDIO.H>& t# V& z% R; ?2 ~
#include <MATH.H></FONT></P>
" G# @4 H8 k/ P& _< ><FONT color=#0000ff>int main(void) , D! y" E/ `, F5 p# h& y, b( c
{
( o8 Z* R6 i1 v3 idouble value;
) ~% M( I1 |5 Wdouble x = 2; </FONT></P>
$ J0 ?! X: j% A7 i< ><FONT color=#0000ff>/* ldexp raises 2 by a power of 3
% G7 M; R6 R; G& D! w, ^then multiplies the result by 2 */
m: v0 D( Y; W& nvalue = ldexp(x,3); 9 g* ~: p6 }( q5 n, ]' k0 C
printf("The ldexp value is: %lf\n",
2 g1 s W. P8 C c+ x: cvalue); </FONT></P>
# M: _$ G0 C0 j0 x3 ^* g< ><FONT color=#0000ff>return 0; ( c- a* V) m* ?, W* Y0 K. P0 A$ d
}
% J! ~. d2 m7 Y7 r0 p8 n1 ~( e
</FONT></P>! q5 g* z" M$ S+ Q
< ><FONT color=#ff0000>函数名: ldiv </FONT>% Z4 @: ]: M3 z# u! Y# `/ \ D
功 能: 两个长整型数相除, 返回商和余数 3 o# a+ g0 G9 [
用 法: ldiv_t ldiv(long lnumer, long ldenom); $ B! H. X _6 x' c* `8 ^) B' n" C
程序例: </P>" i+ Y9 w8 L* K' g+ |( p
< ><FONT color=#0000ff>/* ldiv example */ </FONT></P>/ |+ p8 g0 \0 d+ C3 g p
< ><FONT color=#0000ff>#include <STDLIB.H>
5 `" k0 K# g! S3 P+ @# l1 a% e#include <STDIO.H></FONT></P>
& R4 `8 [: |4 u+ U4 V, j' P7 c; Z< ><FONT color=#0000ff>int main(void)
6 S9 ?% B! g$ a3 Q" B{ , f8 V/ b0 @; y2 E7 U, z9 m
ldiv_t lx; </FONT></P>
- L c+ d2 [. r& R% K( q9 j< ><FONT color=#0000ff>lx = ldiv(100000L, 30000L); + P( J6 i9 h+ x) _6 P3 _$ o" K& `
printf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem);
6 N, G. E' l2 J. _return 0; </FONT>- i7 I$ V6 Y" M$ V _2 s
<FONT color=#0000ff>} </FONT>
$ b! C( G* t5 ?, A0 z/ M</P>; H% o7 r8 Z, g6 Y# F, i, I
< ><FONT color=#ff0000>函数名: lfind </FONT>2 @( }8 ` u- d3 I) u
功 能: 执行线性搜索
1 k$ u) p, p" d4 g1 V用 法: void *lfind(void *key, void *base, int *nelem, int width,
7 v" g$ K& m8 u3 E8 [# t# n4 h) lint (*fcmp)());
' \, }3 u3 N" q: f4 k) S( \& D程序例: </P>8 c# ^6 y: S3 Y) O! a# |+ n
< ><FONT color=#0000ff>#include <STDIO.H>
- ?4 o7 Z' b0 }: ~/ K$ J# O4 t#include <STDLIB.H></FONT></P>* F0 D: s( s1 ^$ ~9 S) W
< ><FONT color=#0000ff>int compare(int *x, int *y) ' A( M# i: C( d* K; a/ z
{ " C0 |3 M4 x: _6 x
return( *x - *y ); " R/ Q& J& H* t( f E( v6 c
} </FONT></P>5 h7 [" l7 _; K1 M
< ><FONT color=#0000ff>int main(void)
$ v4 D0 u+ i M* c. ~0 j3 Z; @{ " G( }: P: N% {" e( H& @
int array[5] = {35, 87, 46, 99, 12}; ) m* W! T8 p4 N; w% ~% |
size_t nelem = 5;
! U- m7 g! T; \' b# |int key;
' ~# o5 u( f/ |$ O: a }3 \0 q- |6 dint *result; </FONT></P>& o3 w( F: C4 u
< ><FONT color=#0000ff>key = 99; ; @1 J. y' n+ H0 t# z
result = lfind(&key, array, &nelem, ! L; }1 T" h$ h% c8 i" c+ c
sizeof(int), (int(*)(const void *,const void *))compare);
# @: c: \/ ^" T$ o( Q6 w7 \if (result)
E% y9 g9 m3 x4 q( o# ]" R; ^7 Aprintf("Number %d found\n",key); 9 P& X% t3 M& N7 x7 d; \+ ]
else
) y4 z) W2 s: c4 d4 x6 D Wprintf("Number %d not found\n",key); </FONT></P>
& P1 u% I# L2 Q4 [* a- V8 [< ><FONT color=#0000ff>return 0; 2 T J# ^& s& v" [7 b
} </FONT>
4 D. u! l; `7 _) r/ p5 J; X2 f6 a( p- I" v3 O% B# x
</P>
* @; ~! p9 W5 [. ]- }< ><FONT color=#ff0000>函数名: line </FONT>
8 _+ ~1 v2 T" k( v% c/ w4 l% p功 能: 在指定两点间画一直线
2 d: C! m+ }: _ o0 s用 法: void far line(int x0, int y0, int x1, int y1); 3 [5 e# C* S) r7 w0 u2 n' o1 z
程序例: </P>$ U) \" s, Y; u% v' d4 r# S: G+ | s
< ><FONT color=#0000ff>#include <GRAPHICS.H>
1 V. }: j5 L# w1 m#include <STDLIB.H>
2 r! t- N1 g# A+ \) J#include <STDIO.H>
+ j4 X! S2 I7 r" L) n& |4 d1 \#include <CONIO.H></FONT></P>
H6 _1 t( j) l; l< ><FONT color=#0000ff>int main(void) 7 v5 V4 c; r1 d5 z2 E
{ & e5 U9 `/ ^. p3 p5 e$ R; l) V
/* request auto detection */
6 l) b7 `! l9 O+ n; V6 `int gdriver = DETECT, gmode, errorcode; 1 U0 G# E: D7 g W" w
int xmax, ymax; </FONT></P>/ \- s P: z# K- e
< ><FONT color=#0000ff>/* initialize graphics and local variables */ " G! M5 Z* S# Z3 s9 w* [
initgraph(&gdriver, &gmode, ""); </FONT></P>1 W/ V s' [4 w, u
< ><FONT color=#0000ff>/* read result of initialization */ 8 O) F0 W0 ]0 \ u, ]
errorcode = graphresult();
! |7 _3 W; v# M" ]* \) ?; D/ I a/* an error occurred */
/ J3 ~4 L- f- i! o7 K) C0 }% Iif (errorcode != grOk)
& q5 z1 G9 b' T! C7 Q$ z6 M. q{ + q/ q0 @$ L5 Z/ R7 m8 N
printf("Graphics error: %s\n", * H/ b9 n6 k6 B
grapherrormsg(errorcode)); - A& }8 V5 z$ P0 F, r
printf(" ress any key to halt:");
4 u+ }3 k7 q/ t2 W6 A/ Dgetch(); , t% ]: K& a1 I3 ^0 Z! e; {9 O
exit(1); ; _( w6 w1 Q& n" c
} </FONT></P>
+ k- H" ]$ Y- f6 X2 D. k0 {< ><FONT color=#0000ff>setcolor(getmaxcolor());
. R9 q1 R. g, F" E% _* `xmax = getmaxx();
& k* y* K4 b- d! oymax = getmaxy(); </FONT></P>
, d$ o( F4 o( {. Q7 |* Y< ><FONT color=#0000ff>/* draw a diagonal line */ 0 p) o( k* b8 q! w
line(0, 0, xmax, ymax); </FONT></P>3 K0 r1 R1 q9 D# F' U. b
< ><FONT color=#0000ff>/* clean up */ 3 I8 c4 r7 v" n# Q
getch();
6 v, o4 h. a' e- {closegraph(); ; }+ z" o! @4 Q
return 0;
0 e/ I- o1 c) p; G' f. b+ V}
l% p4 a2 |7 Z c5 e" ?) }</FONT>
, b/ Y" E) y$ L, E5 }</P>
" v/ [2 \+ ?/ B9 `; E b<P><FONT color=#ff0000>函数名: linerel </FONT>
: D* L$ n2 N4 L7 `$ L功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
+ F( n* a7 }* |6 q1 g. g用 法: void far linerel(int dx, int dy); # r' c# }% Z4 Y- a6 N$ P- a
程序例: </P>
' J* N) E, b$ d: o" `( ^<P><FONT color=#0000ff>#include <GRAPHICS.H>
" u5 g2 [3 S% J: A: F4 Q#include <STDLIB.H>( e) {7 w! w' |. s* ^! B
#include <STDIO.H>
3 W- V- e' n* K4 Y#include <CONIO.H></FONT></P>! }& s; |3 c& Y
<P><FONT color=#0000ff>int main(void) % u$ g. Z& \( x2 Y- w
{
& {4 c( c1 F! M% c! K% N/* request auto detection */
3 `' Z' [7 T1 A% t9 b, j- a1 Hint gdriver = DETECT, gmode, errorcode;
. n/ G0 Y% x) w6 wchar msg[80]; </FONT></P>
) a- e3 S9 M$ l, ?' Q<P><FONT color=#0000ff>/* initialize graphics and local variables */
( [& {& N& Q* @2 L9 V& ]& einitgraph(&gdriver, &gmode, ""); </FONT></P>7 B6 ~* t% ]* H- c
<P><FONT color=#0000ff>/* read result of initialization */
; R" t+ P; Y! W/ ]6 d0 Z- ~ k. Zerrorcode = graphresult();
! V+ Q6 e, W8 W" bif (errorcode != grOk)
W. l$ j3 X2 w7 [1 ^' M{ - j7 {6 {3 ]6 \( Y2 I) B
printf("Graphics error: %s\n", # s* i# c! v7 G2 U; }" N
grapherrormsg(errorcode)); # R5 f- u( b5 ?5 k3 _6 O* V' k- H
printf("Press any key to halt:"); ! v: \3 X# J) U7 Y. v c
getch(); 3 i, t% Q! O) [7 l
exit(1); , P4 ~# p1 }2 t, Q1 z+ N/ U# [
} </FONT></P>
# a/ u9 r' R! [% h7 p- M<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
. N* n+ M2 e; M- Q* `$ |moveto(20, 30); </FONT></P>& V: [5 [. H- N6 r/ F$ E( l
<P><FONT color=#0000ff>/* create and output a
* ~4 M s* y! b' F j) ^, dmessage at (20, 30) */
1 g! x9 k; S+ u( O A. ]6 ]/ lsprintf(msg, " (%d, %d)", getx(), gety()); 0 V0 R( c) X1 K7 B( `5 G
outtextxy(20, 30, msg); </FONT></P>' ]/ I$ k" W- @ X
<P><FONT color=#0000ff>/* draw a line to a point a relative
+ g1 s2 o) `8 d: H6 Edistance away from the current - Z) `; t: {' X; F4 p' Y9 O" X
value of C.P. */ * b E6 K$ v& \0 V3 g1 g
linerel(100, 100); </FONT></P>2 T+ n$ s& k. n. h
<P><FONT color=#0000ff>/* create and output a message at C.P. */ : y' `; ^$ T6 X; D7 G
sprintf(msg, " (%d, %d)", getx(), gety());
2 l$ m$ \4 b1 H7 W# E9 Kouttext(msg); </FONT></P># y* f( A( x! G4 u" g2 I. O
<P><FONT color=#0000ff>/* clean up */
6 n" N% D/ M- l- ]. R% Bgetch();
/ R6 c/ [; r+ Oclosegraph(); % _. \: I* g; w4 @# o+ K G
return 0; % P3 [4 d0 U4 e4 O! R, j
} </FONT>, U) {, Y; t5 [. N2 y: z
</P>
$ ]! X' a- s( S<P><FONT color=#ff0000>函数名: localtime</FONT> . \: U, P; w3 s1 v+ B2 {
功 能: 把日期和时间转变为结构 - q" J+ |/ v S, e9 h7 U
用 法: struct tm *localtime(long *clock);
8 L1 \6 y+ p2 |4 c程序例: </P>- v9 R8 h4 ?. q% p" p+ u Y
<P><FONT color=#0000ff>#include <TIME.H> e; k% v/ w% X7 z9 _4 r
#include <STDIO.H>
: h! Z' u: I% B* q. o: P#include <DOS.H></FONT></P># g! a: V( i" P$ k$ G* H
<P><FONT color=#0000ff>int main(void) 2 r( D7 ~, D. N. S3 \
{ ; m6 g4 ] @' j+ w5 u; E
time_t timer; 2 a! T( e) _( N( f% S
struct tm *tblock; </FONT></P>
6 B' }$ }# t" e8 [7 g8 ]3 b<P><FONT color=#0000ff>/* gets time of day */
) ~( [; |; d t% x$ B6 f5 utimer = time(NULL); </FONT></P>) g ?9 N- w% z# H' h s$ A7 y
<P><FONT color=#0000ff>/* converts date/time to a structure */
3 A! }9 o5 r8 i( k3 ^( q# Htblock = localtime(&timer); </FONT></P>, _/ H& A* w# A3 j6 ~
<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>
. c3 y. B" R) }' P% G<P><FONT color=#0000ff>return 0; K/ ?- \3 v+ {
}
9 g- n3 {: Q4 r' t$ U: N( ?3 H. k& `+ I. C5 }
! s6 w+ ]( [! J5 m
</FONT></P>
0 D$ q9 a2 r. d) Q<P><FONT color=#ff0000>函数名: lock </FONT>2 G/ n+ q# ?- S% t$ G. l( U
功 能: 设置文件共享锁
" K" f0 q# ^/ F0 e用 法: int lock(int handle, long offset, long length); C( ^" s/ S2 ^+ S
程序例: </P>
7 q. B, z+ s! P3 v<P><FONT color=#0000ff>#include <IO.H>
: k5 {6 x5 D* p `' h% B) g#include <FCNTL.H>, k1 I, L6 ^' o$ C1 y
#include <SYS\STAT.H>
, p1 g1 t" Q. N, M#include <PROCESS.H>* _, B! Q9 J% z
#include <SHARE.H>
' R% b. X0 ~; {#include <STDIO.H></FONT></P>
0 v/ V$ ^) N- U- G: L# G<P><FONT color=#0000ff>int main(void) ( w0 T/ ]. {/ V! K/ z- u2 X
{
% q' T: Z ]# [' I1 dint handle, status; 9 }( W" H- i9 K: q3 I
long length; </FONT></P>
- h! q6 x+ T0 n+ Q7 F<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */ $ K6 A' P! ]2 ]! f
/* file locking to function properly */ </FONT></P>
@2 L6 G9 e7 q- C# f" k& `5 w: L<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",
1 y$ s! y5 G8 K' zO_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>
# S5 {- o" J, z$ b<P><FONT color=#0000ff>if (handle < 0)
/ H7 x' B/ J \- c& k# o{
+ v' w# N) ^' u3 r& kprintf("sopen failed\n");
# K" W$ a5 V# y7 ]* j/ [ I0 Qexit(1); $ n9 G5 ~ P9 B+ ]* C
} </FONT></P>( I8 w/ i7 ^+ w% U, D$ _) G, s) `8 ]
<P><FONT color=#0000ff>length = filelength(handle);
9 L) `8 ~2 }' D3 tstatus = lock(handle,0L,length/2); </FONT></P>. F3 R) O: P2 X! @" P) P; k/ F
<P><FONT color=#0000ff>if (status == 0) 9 j# X1 \. s' n, \
printf("lock succeeded\n");
1 C8 r2 n3 D9 Oelse
8 W2 z p& n2 i8 U2 R5 x# C; Kprintf("lock failed\n"); </FONT></P> ^' D5 Q4 H/ v W" j
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>3 g2 P- Q. b" L0 `) D9 s# D1 u
<P><FONT color=#0000ff>if (status == 0) : d6 Q1 M" Y Z+ U) {4 _% D3 p( x
printf("unlock succeeded\n"); + z& z$ n, Y0 {% x8 B
else
! ?3 \# Q9 \6 [8 L2 T1 aprintf("unlock failed\n"); </FONT></P>8 P3 S/ f' V L5 m" `
<P><FONT color=#0000ff>close(handle); 0 m8 Y' V! ?9 d. `% V% ~) o
return 0;
3 O! E% o- M( z* G! c% N4 h} . ]# a3 `" h' w
</FONT>
1 O! V, {& N$ }: S9 s# d% {$ Z1 }</P>5 T1 n, d' r4 ]1 i4 m; d* e/ y
<P><FONT color=#ff0000>函数名: log </FONT>" M3 w/ U; S- ]. ~+ e% z; W
功 能: 对数函数ln(x) . t4 t' T4 L; ]
用 法: double log(double x);
2 K) U( \. F9 V$ A+ }程序例: </P>, l; d9 V- m6 d) m
<P><FONT color=#0000ff>#include <MATH.H>% s4 k" w0 o" h# B' y
#include <STDIO.H></FONT></P>
$ I1 i! s2 c/ y: G/ M& K! Z7 _<P><FONT color=#0000ff>int main(void)
7 t7 ~1 K3 d+ ~5 X* s: i3 Q1 A{
: k1 i& x) L+ q6 Jdouble result; & ], T5 T+ m9 H
double x = 8.6872; </FONT></P>
) o8 g% P' i+ _9 f. g' ~6 U<P><FONT color=#0000ff>result = log(x); / w2 g p6 g1 s6 ]* e
printf("The natural log of %lf is %lf\n", x, result); </FONT></P>) Z6 U% C" d* u& D. \
<P><FONT color=#0000ff>return 0;
+ ?5 k+ j! B9 F% g- i9 l' D$ o}
7 H+ `( a! p) G s" A9 S+ V8 j1 F- e% j( y' }: ~# \- v1 O+ e
</FONT></P>
* I0 O( c2 m* J' W<P><FONT color=#ff0000>函数名: log10 </FONT>7 P3 G. U2 j0 }1 n
功 能: 对数函数log : c+ G: b" \0 Y* n
用 法: double log10(double x);
; d% @4 ?: r. L8 j程序例: </P>
- F, H- h1 I5 x+ ]<P><FONT color=#0000ff>#include <MATH.H>
" |1 y1 E& X0 Z#include <STDIO.H></FONT></P>
1 k3 t) ` a4 M. [# G<P><FONT color=#0000ff>int main(void)
, [: L6 d& i" |. {{ 3 d1 I4 {& |% Y, x
double result; ' |: a" c' z- J) K+ S0 t# h
double x = 800.6872; </FONT></P>
, {0 @8 q- U+ h" H8 O/ N& z<P><FONT color=#0000ff>result = log10(x); & |/ \" W, L Y; m" |
printf("The common log of %lf is %lf\n", x, result); </FONT></P>1 g$ E- x- ?4 |" ?7 C
<P><FONT color=#0000ff>return 0;
1 J' T' i1 r' x# O% X! ^5 z, w7 k+ d}
4 s& ?. t9 ^5 ~" _9 V9 {9 P" \ G# M6 P
# {: x' ^2 G$ L0 L! x</FONT>
) A; D9 b' S/ e0 z {7 _9 v* E</P>
; L1 n1 f& _: h+ ] i G<P><FONT color=#ff0000>函数名: longjump </FONT>
5 h& L0 V% G) ~) [功 能: 执行非局部转移 ! }6 x. j! R# F+ h. B; n. e& J
用 法: void longjump(jmp_buf env, int val); 1 U H/ C! T( [
程序例: </P>0 c& |3 _5 \0 ] K) s) h! A
<P><FONT color=#0000ff>#include <STDIO.H>
: ?8 |- ~2 \' m& b; n2 U#include <SETJMP.H>
0 W( I8 S% O7 r#include <STDLIB.H></FONT></P>
6 w' t8 g: U w4 E& K<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P>
! U1 n7 Z1 Y+ O1 s<P><FONT color=#0000ff>int main(void)
3 n; ]) c% j' @' W{ </FONT></P>
M+ d5 y0 o( o- U' i$ k<P><FONT color=#0000ff>int value; - y2 |" @9 _! l' Z
jmp_buf jumper; </FONT></P>
u6 ~$ Y- f% {4 z1 O! f<P><FONT color=#0000ff>value = setjmp(jumper);
+ S! r% J5 |2 M+ p" t% Pif (value != 0) 5 z* {; E& K+ R$ M- c4 w+ I+ D
{
4 @2 M0 n7 U, e0 @! N7 n3 Dprintf("Longjmp with value %d\n", value);
& o. c$ Z, v$ o2 Vexit(value);
) o" h) g+ V, G) F}
( q2 `; c3 s8 \4 Pprintf("About to call subroutine ... \n");
/ b' T g7 F$ Q+ }2 h4 }subroutine(jumper); </FONT></P>( @( k( p* C% M7 Q/ l8 d3 V: C
<P><FONT color=#0000ff>return 0;
* i. g' t& p2 g, `2 z} </FONT></P>
6 ?- v0 M9 Z( y: p2 m9 B9 [% _& K c<P><FONT color=#0000ff>void subroutine(jmp_buf jumper) " `( X4 M1 G& s& d$ D9 ^( K
{
# K; `5 K" b- c) xlongjmp(jumper,1);
4 ~% Z+ H& I2 Y: p& F+ V4 k7 {} " z& l& R: }7 ~* S6 H
" ^( t# P! m4 }1 T</FONT>
& B2 }2 O) x9 n% N4 s5 C0 B) H</P>
; u( ?. ~$ J; Y7 w r) N" G<P><FONT color=#ff0000>函数名: lowvideo</FONT> 7 G% b# X( w/ S
功 能: 选择低亮度字符 " y8 D1 T: u* [& I
用 法: void lowvideo(void); 7 K/ k2 I# ?5 c) h5 u7 p
程序例: </P>
! x- O/ @ q) ^1 Q8 b+ P( v1 ]<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>
; U, T. O/ Q5 g' \% J<P><FONT color=#0000ff>int main(void) , ~- Y" S- n0 \" P, B& b
{
4 \% L4 i+ l) N% e$ T5 C2 p. i/ Oclrscr(); </FONT></P>! B* A% a' [$ A/ {9 D/ i
<P><FONT color=#0000ff>highvideo();
% F% n4 k4 `% x$ |cprintf("High Intesity Text\r\n"); + @! X* J! C0 o! V; x6 S! m" t1 `
lowvideo(); 9 \% ]% @ S: c/ J1 y/ j
gotoxy(1,2);
& u( ~6 Y$ N$ I5 R! H& v ocprintf("Low Intensity Text\r\n"); </FONT></P>
Q6 I7 O1 G6 M# Q<P><FONT color=#0000ff>return 0;
' F7 M2 q) d) j0 h3 g' W% ]! u+ s' J} 5 I6 K$ j; G4 K; W5 E2 ~& s
. Q6 u9 e# H3 c& E; Q% ?( E</FONT>: ~3 v% ^4 A' M: q7 `
</P>
5 X$ j$ j: z! `<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>9 ^( q% P0 z* e, Z' f
功 能: 将无符号长整型数向左循环移位
; U0 h6 A8 H+ ]- n( {+ U) c用 法: unsigned long lrotl(unsigned long lvalue, int count); W: p" S& a% w! c: Q
unsigned long _lrotl(unsigned long lvalue, int count); % A n7 o8 J; J% b9 ]- X
程序例: </P>( v, r9 N5 d7 A. z5 ]' }
<P><FONT color=#0000ff>/* lrotl example */ : l) X3 x/ S# ~4 d5 a4 r
#include <STDLIB.H>+ h: ]3 A6 }' I( p* b# y
#include <STDIO.H></FONT></P>! }, |9 b- o+ _! e* }
<P><FONT color=#0000ff>int main(void) 0 }1 {& s7 h5 }7 ]
{
- x9 X4 t5 m+ F8 [unsigned long result;
2 c' w, a' {0 Q0 _unsigned long value = 100; </FONT></P>
% z+ L! `3 ?! A+ b! y5 @1 W; I<P><FONT color=#0000ff>result = _lrotl(value,1);
4 [9 ^+ ] I: B. G( k/ sprintf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>; C* Q9 h u) g3 r/ R' Y3 {& m2 S
<P><FONT color=#0000ff>return 0;
" i E% D# b$ r; }9 }+ B) W6 Q( g}
* H% \: f+ H f</FONT>( o) \, J& X9 x
</P>
7 i' b' w- [; z) o<P><FONT color=#ff0000>函数名: lsearch </FONT>
0 t3 x; `, l# K5 i2 Y* W0 ~$ |功 能: 线性搜索
" r* O8 L9 |0 m" H" y7 Z用 法: void *lsearch(const void *key, void *base, size_t *nelem,
" a6 A- I4 T" ~- a }0 c9 vsize_t width, int (*fcmp)(const void *, const void *));
0 F# K8 l& ^8 `" _% y程序例: </P>
5 u$ e7 m+ F% Z* O& k5 P8 p<P><FONT color=#0000ff>#include <STDIO.H>* l/ z# y( c6 r# r8 r* m
#include <STDLIB.H></FONT></P>
* I5 l% w/ Y9 H- S6 k, P; E' f8 Q0 c<P><FONT color=#0000ff>int compare(int *x, int *y) ( ^, `- d; E P! P/ V
{ # y/ O: M7 f& a/ N+ b1 k3 ?
return( *x - *y ); ! [; F; m' A" e* E3 C) F# V7 [
} </FONT></P>2 ^0 p$ T" F4 V- j+ K. ]1 b. g
<P><FONT color=#0000ff>int main(void)
& C! T) @ K" x x{
+ B- R9 R/ q% p" \- W; f {int array[5] = {35, 87, 46, 99, 12};
. z M( V. R& }# N! T* }size_t nelem = 5;
' S J J; P6 _" D0 S Rint key; * b C( a8 W$ \) e
int *result; </FONT></P>
! Y5 F. j& ?3 E7 \<P><FONT color=#0000ff>key = 99; 2 U" m) w: C( L$ H* O7 r
result = lfind(&key, array, &nelem,
. X7 e- K9 G1 R# Vsizeof(int), (int(*)(const void *,const void *))compare);
. `; R1 H2 y- k# l% Tif (result)
/ T: t. Q* B3 ?( N7 ?5 Nprintf("Number %d found\n",key); . X7 U/ ^; A; Q3 _8 N- W3 J
else
; d" k. l/ G( n3 tprintf("Number %d not found\n",key); </FONT></P>
. Z; `. a* T3 E2 e<P><FONT color=#0000ff>return 0;
6 J1 j, b3 L1 z4 J6 u} " o" J2 o5 Y2 o6 V
3 i7 u$ Q9 [) f$ l# O. G* U
</FONT>
# b1 k; e6 g/ [- Q- m2 h</P>4 y: L, M; Q; Q( u+ f2 K4 ~$ O/ f W
<P><FONT color=#ff0000>函数名: lseek </FONT>
2 D( F: f# I0 z! d g( L4 w功 能: 移动文件读/写指针 ) X! w D6 l' }" |+ f1 |( C
用 法: long lseek(int handle, long offset, int fromwhere); 2 b+ g( P, C4 O! _' J1 X
程序例: </P>7 n5 Z' F- e% ~, M* s+ O
<P><FONT color=#0000ff>#include <SYS\STAT.H>( F0 h8 H9 j8 Z( c, y
#include <STRING.H>
- `$ } e' j. q6 p f9 ~/ E#include <STDIO.H>
t( z i" f2 |6 l$ s* c" u#include <FCNTL.H>3 @ ?- x! n: M' d0 y; C, y' b
#include <IO.H></FONT></P>6 t6 y& z8 W5 g: q
<P><FONT color=#0000ff>int main(void)
! n) p' m: \9 E{
! }9 O8 N! ~8 J% ]( y4 {6 Yint handle;
$ P7 P3 A% G% ^( {. f$ Dchar msg[] = "This is a test";
, Q+ ?; _3 n+ u M& U! z3 z) v8 t1 Cchar ch; </FONT></P>
. v$ I; `+ b- n, x6 U<P><FONT color=#0000ff>/* create a file */ 1 Y6 `& t u9 [1 g! _1 C5 Z& i
handle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>" Y$ K/ F1 G4 s9 p5 u: C
<P><FONT color=#0000ff>/* write some data to the file */
* s7 L3 @: v$ u# a) m/ Q% Gwrite(handle, msg, strlen(msg)); </FONT></P>
! \4 Q9 o6 a" X( F. o. I<P><FONT color=#0000ff>/* seek to the begining of the file */ " E. L( V8 o8 C' h# _- i
lseek(handle, 0L, SEEK_SET); </FONT></P>- m! `+ {5 N0 ~
<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */ * Y5 d1 j: \+ I9 G
do # p; t* P5 n7 y. P2 m; r* y
{ 6 y1 K- j0 f0 a; V) I
read(handle, &ch, 1);
8 k! Z. F8 r8 jprintf("%c", ch);
% |2 T5 V. |1 t K4 @5 h- u, f} while (!eof(handle)); </FONT></P>
7 t0 `- B: E- ^8 U<P><FONT color=#0000ff>close(handle);
# h0 P& e' G; B! @; creturn 0;
) a* a, N m3 q+ v# i0 h}
# k) ~/ [, ]4 A</FONT></P>
$ B' I7 L5 M8 q j& [( I3 E' L<P align=left><FONT color=#0000ff></FONT> </P> |
zan
|