- 在线时间
- 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>$ @3 w: t3 W, I! A) R. y; }. F2 u8 q
用 法: long labs(long n); W) Z8 d& I, @; _6 b8 Q$ H( a
程序例: </P>
2 I) R* ^ W9 o! i. B( h4 }! j( W- R: L< ><FONT color=#0000ff>#include <STDIO.H>. ?6 H, S% {: H, ^9 o
#include <MATH.H></FONT></P>
) [+ W5 L5 h8 f9 c4 }: L) u& N< ><FONT color=#0000ff>int main(void)
1 g7 p: A% Q7 `7 F$ m' N" e{ " b7 u6 @9 q& I
long result; 5 ?- w' N8 ~+ c
long x = -12345678L; </FONT></P>
5 T# ]' T2 F' L( j< ><FONT color=#0000ff>result= labs(x); I0 z* D# F+ S- [3 X( |0 X3 S
printf("number: %ld abs value: %ld\n",
8 I" Y# o E& b1 Z9 `1 H3 u3 z1 Mx, result); </FONT></P>
5 d& X) H3 Z( W: l! d0 q, H< ><FONT color=#0000ff>return 0; + q1 c. p) ]2 x% N: Q$ I3 d. H
}
& g H+ c6 o: W</FONT>/ W- }# P' @: j
. i$ L9 X5 G' \; v</P>
; H1 r0 N1 f/ A4 E/ w< ><FONT color=#ff0000>函数名: ldexp </FONT>2 Y/ G6 T8 U' \9 o5 ?9 E. a! X9 K% Q
功 能: 计算value*2的幂 ; K0 h% U& ?+ m: @( f
用 法: double ldexp(double value, int exp);
: I% ~* [( @2 l8 y9 t5 E程序例: </P>
' K# P* Y. ?3 I. p' f% V< ><FONT color=#0000ff>#include <STDIO.H>% f" s3 i, Z( M0 |, B! o! K2 D
#include <MATH.H></FONT></P>
7 y- o. q2 Q% j2 q+ q< ><FONT color=#0000ff>int main(void) & A# V* Z& [ ?8 g8 o
{
5 l! u: v2 ~. X$ R. H1 rdouble value;
2 h4 w/ ]4 V6 l t7 l0 ]4 O4 mdouble x = 2; </FONT></P># n S0 j" l- ` L
< ><FONT color=#0000ff>/* ldexp raises 2 by a power of 3
B0 Z5 H- C/ \. C" `2 Kthen multiplies the result by 2 */
7 A, ]1 o% B0 [0 J" `& qvalue = ldexp(x,3);
1 ^7 ]4 g' \! ~printf("The ldexp value is: %lf\n", : S9 h. x" J' ~' W" h1 `
value); </FONT></P>/ P+ F& k2 y' D" ]0 J3 f
< ><FONT color=#0000ff>return 0;
8 A6 P, P. @$ f1 W} 7 M4 g/ `6 g, n$ h9 Q, Z: B. d
' S1 I1 u+ _/ ^</FONT></P>
* J. K* }/ {0 {5 w< ><FONT color=#ff0000>函数名: ldiv </FONT>
2 w+ t: G: d7 X" M: }9 s功 能: 两个长整型数相除, 返回商和余数 7 K+ C2 C8 X9 _7 P! `
用 法: ldiv_t ldiv(long lnumer, long ldenom);
: K3 `. x1 f/ O1 L- k" |. ]5 I6 V程序例: </P>2 D5 u% D9 I- C' A0 ]8 F
< ><FONT color=#0000ff>/* ldiv example */ </FONT></P>
1 G& J+ n1 Z0 `0 \" `/ V& |4 G< ><FONT color=#0000ff>#include <STDLIB.H>
3 K' Z7 k: R3 v7 W; [! Q#include <STDIO.H></FONT></P>
6 O1 S* l* T$ S) N8 P! ]1 c< ><FONT color=#0000ff>int main(void)
8 Q& g" B. V, u& C. R' G{ 8 m4 j. I+ L( o6 g: u
ldiv_t lx; </FONT></P>
8 m/ ]1 l0 L3 ^4 _! J2 ?* z E< ><FONT color=#0000ff>lx = ldiv(100000L, 30000L);
5 S ] y" f; t" M6 eprintf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem);
, }! y8 m/ K% |6 \, R1 w# B# treturn 0; </FONT>
7 |: J& x. F [4 e! L* _0 @<FONT color=#0000ff>} </FONT>
3 w! a! Y9 d$ a! E9 g1 w, f</P>
2 _) q0 A' D& o; ]4 n/ t8 o8 s# \8 \< ><FONT color=#ff0000>函数名: lfind </FONT>6 b5 R8 l) `( P, |$ r: r" h7 s1 s
功 能: 执行线性搜索
0 g8 L; l: ?$ `# [. g* S用 法: void *lfind(void *key, void *base, int *nelem, int width, 2 e; ~0 p' Y5 [, G4 P2 y9 c
int (*fcmp)()); ) ~1 i, N+ E5 d# X8 t2 p
程序例: </P> F! G- q, v' g/ R4 [
< ><FONT color=#0000ff>#include <STDIO.H>& L/ {& ^8 M' [
#include <STDLIB.H></FONT></P>6 I: b% q! Z) u9 B0 B! M, t
< ><FONT color=#0000ff>int compare(int *x, int *y) * o4 P+ O1 X$ a& j: I# r# m0 | K- @
{ + E% o2 ]: j f8 t; q, T/ _
return( *x - *y );
3 W* z; \7 h% `+ G} </FONT></P>0 V/ s4 P/ R& V$ A
< ><FONT color=#0000ff>int main(void) 0 f0 A% f% h" [8 H/ O5 y Z
{
# x$ d3 m# k, A+ C/ rint array[5] = {35, 87, 46, 99, 12}; - m+ ^( Q" O( w: V
size_t nelem = 5;
# b7 z4 f) g% O9 ^" v: Iint key;
. f$ k9 B7 B& t Z3 A& a7 Pint *result; </FONT></P>$ q8 x) q% Y4 A& b8 h0 y6 I
< ><FONT color=#0000ff>key = 99; - L' r4 Q; w! V
result = lfind(&key, array, &nelem, ! ~. u6 Q5 k" z4 Z9 h; {8 S: L
sizeof(int), (int(*)(const void *,const void *))compare); , J0 m: ^5 ?$ V- H5 W
if (result) b7 y: ~; Y/ t' b
printf("Number %d found\n",key); * _8 n5 b% i+ \/ l8 t( m- d( {
else
2 M+ Q5 @2 ]8 F- Wprintf("Number %d not found\n",key); </FONT></P>0 M4 ]0 @( E! U/ \. E! s8 h: R
< ><FONT color=#0000ff>return 0; : p5 @9 H) z" Z4 v* n! W
} </FONT>- u" ]( @ M5 `" h6 C9 \$ M6 e
/ N% `9 ?9 `& e. a; R8 Q& b' q</P>7 I! J5 U/ ?6 l* _
< ><FONT color=#ff0000>函数名: line </FONT>1 n* N# l$ q: I# D) M5 j
功 能: 在指定两点间画一直线 ( H! `8 \/ Y9 ]9 }9 v
用 法: void far line(int x0, int y0, int x1, int y1);
6 T0 s& s, ]: Z6 t! |* D; _程序例: </P>1 X' `9 x1 `; _( y/ i
< ><FONT color=#0000ff>#include <GRAPHICS.H> i9 R0 l0 g& r9 D$ h% L
#include <STDLIB.H>3 O1 R9 B, G; b3 s& r2 B. L, r1 e0 H
#include <STDIO.H>
6 D' ?6 i5 w }) f#include <CONIO.H></FONT></P>
7 E, {3 {4 c# F* f9 B h! C6 ?< ><FONT color=#0000ff>int main(void) Q$ h/ C M5 \) S
{
u: }1 f9 K9 W" ]% O1 v: L( x% F+ J/* request auto detection */
8 c6 ^* d" q. V+ s5 [7 \6 }* \int gdriver = DETECT, gmode, errorcode; 7 p/ j! @2 Y. y! f- d' E
int xmax, ymax; </FONT></P>% t( N1 C0 b I4 W5 c8 A
< ><FONT color=#0000ff>/* initialize graphics and local variables */
; j. q5 l6 O0 l$ A5 winitgraph(&gdriver, &gmode, ""); </FONT></P>
4 h. r8 M C& Z& r4 q! D< ><FONT color=#0000ff>/* read result of initialization */ 3 Y$ u6 O% ]6 D
errorcode = graphresult(); - J2 o8 W1 Q$ \ j
/* an error occurred */ . z$ ?+ _" F) L
if (errorcode != grOk)
, g' P" W6 K9 `) H6 \" @" g{
' k/ K& f& p9 |& a& F8 Iprintf("Graphics error: %s\n",
z6 q' \% S8 h6 C4 n( Z& J( Tgrapherrormsg(errorcode));
# H k, c9 J; X- C) iprintf(" ress any key to halt:"); $ f9 M; B0 l. ^! n6 X; x# L
getch(); # x. s; |- j8 n
exit(1);
" r- f7 M4 w6 j, L. N M6 M} </FONT></P>
* f( d1 u$ ?6 W: U1 ]< ><FONT color=#0000ff>setcolor(getmaxcolor()); 9 Z8 `) l5 s. s2 |
xmax = getmaxx(); ( R5 ?, {! U! O: G" V
ymax = getmaxy(); </FONT></P>7 ~; ~# X! H: g9 U
< ><FONT color=#0000ff>/* draw a diagonal line */
: e0 X" N5 Y+ I2 M) Y6 T) Oline(0, 0, xmax, ymax); </FONT></P>
0 v3 G b7 [& y F< ><FONT color=#0000ff>/* clean up */ 4 }& I+ x: a( r9 l* ]
getch(); ) J* R7 @0 b3 i5 o! D h% I
closegraph();
( g2 l& o7 U# h9 l* j+ E; greturn 0; & A" O& ]+ K0 }( D
} % Q& G7 H# i, ]" D
</FONT>9 R) c, M3 r, u( H$ ]
</P>: P# l h" p ?+ ?8 ?$ }
<P><FONT color=#ff0000>函数名: linerel </FONT>
' x+ W( R- W' n: i0 s' t功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
+ A+ } f" v, f5 K( x) F9 D% Q用 法: void far linerel(int dx, int dy); 3 W$ G6 e, \. A/ M" C. A
程序例: </P>
$ V1 n' [5 d* ]( d$ c<P><FONT color=#0000ff>#include <GRAPHICS.H>* T' U3 y6 H4 G8 ?
#include <STDLIB.H>
2 m! r9 L- N$ B) l0 T#include <STDIO.H>5 u. u6 X5 b+ z/ Y0 y
#include <CONIO.H></FONT></P>1 U$ `. c1 J6 n; U, m* J
<P><FONT color=#0000ff>int main(void)
( b% l# l+ I. S b9 \{ u$ M Z/ f) R4 l
/* request auto detection */ * N( g4 N' G6 d! \: @
int gdriver = DETECT, gmode, errorcode;
" d% Q9 t, s4 xchar msg[80]; </FONT></P>9 E' j' k$ B5 r# q
<P><FONT color=#0000ff>/* initialize graphics and local variables */
, C4 _; J$ E+ C- g& T3 Linitgraph(&gdriver, &gmode, ""); </FONT></P>/ C' Z4 U6 B; ^% J c
<P><FONT color=#0000ff>/* read result of initialization */ 8 F( B' H. T9 @, Q
errorcode = graphresult(); . V: G/ ^5 I y$ N( j
if (errorcode != grOk) 6 a7 r1 o3 j4 b
{
0 F2 w5 E J) [printf("Graphics error: %s\n",
" K- S4 L. k- o8 w: a# |grapherrormsg(errorcode)); & W6 p) i/ i O9 I/ N9 P/ X
printf("Press any key to halt:"); ) a3 D& e8 ^2 d0 Z
getch(); / u. V' r N3 D" d5 ^! F
exit(1);
# p$ H. L: {& Z} </FONT></P>
- o1 M8 r+ c) k<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
- _9 s, k& v% s. U, V/ m4 R3 N0 U& Jmoveto(20, 30); </FONT></P>
+ o( d: _3 @8 {<P><FONT color=#0000ff>/* create and output a
$ Z0 X2 L( h% [7 z0 Z- nmessage at (20, 30) */
6 A; H7 u( v+ x' y2 \sprintf(msg, " (%d, %d)", getx(), gety()); 3 o. s8 T7 Z8 k6 s Y( `; U( W1 o
outtextxy(20, 30, msg); </FONT></P>
: C$ L" p6 R# h5 U7 S% c<P><FONT color=#0000ff>/* draw a line to a point a relative
; F' o0 z7 {: P2 j! Tdistance away from the current ! X# n" N2 f$ g0 n! ~& u8 p9 Y0 w
value of C.P. */
% ]" h( @1 g# q+ B) alinerel(100, 100); </FONT></P>
3 S; P% O: M/ m S" g2 I% ~4 g<P><FONT color=#0000ff>/* create and output a message at C.P. */
+ [/ y' E4 Z, r/ K. v3 t$ fsprintf(msg, " (%d, %d)", getx(), gety()); ) j6 q7 k' E0 ~6 }& t6 }) K, P
outtext(msg); </FONT></P>% f1 ]7 V) k& k/ Z% ~( V# g) ]( X7 x' v
<P><FONT color=#0000ff>/* clean up */
" C1 g. `0 Y& Z1 p: w" ygetch(); 9 e& j& |" q% V2 _6 t
closegraph(); " `5 q$ q( O) ]5 f' I+ V/ x
return 0; & b% P6 A" F2 P7 T' p, f9 z" f
} </FONT>
, w; d5 O' D! K, O</P>
2 }! A- B5 y4 i& P<P><FONT color=#ff0000>函数名: localtime</FONT>
; E2 _( e4 r) Z* p4 T功 能: 把日期和时间转变为结构
* k9 S6 i& l/ m) T6 J用 法: struct tm *localtime(long *clock);
4 d* I% p6 p5 X% y程序例: </P>" j+ t' | Z" o
<P><FONT color=#0000ff>#include <TIME.H>9 z o" Y {9 y4 I& Z% j( e
#include <STDIO.H>4 T* j, v9 O' d8 }$ l
#include <DOS.H></FONT></P>
* i* c5 E9 }' L<P><FONT color=#0000ff>int main(void) ( T# l( A1 L- ?8 |
{
6 A7 [) a0 p3 C3 U! V/ D: Wtime_t timer;
; y M# p6 E0 H( dstruct tm *tblock; </FONT></P>& F* d( Q7 E+ {" @
<P><FONT color=#0000ff>/* gets time of day */
1 l: {* i; {0 ]4 _' a! L g& F4 ]timer = time(NULL); </FONT></P>, o$ X4 v3 o0 i8 S4 ^$ q
<P><FONT color=#0000ff>/* converts date/time to a structure */
4 H: _6 y5 K% j4 Wtblock = localtime(&timer); </FONT></P>( I$ B# G+ D# K! Y/ `3 q
<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>
7 B2 S! p6 f) s$ w! q5 Y<P><FONT color=#0000ff>return 0; X% M8 v+ ]3 ?4 T2 j- @: i
}
& s U4 [0 V# b8 u) V6 L; u! I% }: W" }7 @- T
]# N: n3 \. |
</FONT></P>& f5 H! l' g% }* F
<P><FONT color=#ff0000>函数名: lock </FONT>1 Q, C) v) ^* m& N( |6 Q) O
功 能: 设置文件共享锁 8 T2 m5 l6 K( p" l5 H
用 法: int lock(int handle, long offset, long length);
2 x. X$ n* ^- o程序例: </P>: V: H5 E" E- O* C+ m
<P><FONT color=#0000ff>#include <IO.H>
$ @- G6 Y- O" c5 E# l#include <FCNTL.H>
. l: [/ l J) M& i: M( s1 q: B( C#include <SYS\STAT.H>
1 C' Z0 q9 R+ T9 i: f% l1 D3 d#include <PROCESS.H>, t. v3 [: a ~9 W; p
#include <SHARE.H>
9 [+ Y1 Y% s. M# U0 ~1 s#include <STDIO.H></FONT></P>
# a$ h+ F* _7 I# T7 o<P><FONT color=#0000ff>int main(void)
# R- `3 D0 w$ G" |3 w5 y{
, y" y n& l! q6 jint handle, status; # e& {" N0 e+ i [) z# x' B
long length; </FONT></P>
' D6 Z5 Y/ E& @0 n$ _3 b<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */
$ B: v7 i/ u" v/* file locking to function properly */ </FONT></P>
. w6 t6 Q/ j9 Y c9 {, p/ }<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",
! n( p0 V" b* n6 CO_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>. v$ t4 K" x+ o' c6 h6 F3 P
<P><FONT color=#0000ff>if (handle < 0) - p# S* e$ U! i/ ?9 A }, o+ ~
{ & b% N( l: ?2 H# P2 z4 f7 F
printf("sopen failed\n");
7 I' C1 y4 U# S! X0 U6 \/ Vexit(1);
9 f% U) a, @6 V* U7 b} </FONT></P>/ S4 Y, p, y1 I* D' ?
<P><FONT color=#0000ff>length = filelength(handle); * V& h7 T0 @" T. \
status = lock(handle,0L,length/2); </FONT></P>8 ^) A' Z+ n6 A
<P><FONT color=#0000ff>if (status == 0) 2 Y# S! w4 P: R1 y2 l" t' f
printf("lock succeeded\n");
4 R( L7 K4 n8 [4 J' L1 v+ B+ A4 Ielse + N: l3 z: E; r3 c5 C
printf("lock failed\n"); </FONT></P>' U& i' T5 x$ a
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>
( s! C; Q- g8 F% v<P><FONT color=#0000ff>if (status == 0) E0 k$ Z) s: N- U8 r
printf("unlock succeeded\n"); 9 ^5 k! W& s) n7 ]- U* Z" }8 a' u
else & B) z! }5 y3 w/ x+ w2 }' |& A$ k
printf("unlock failed\n"); </FONT></P>( m2 s s! l' c6 p9 q4 v' H3 H8 o
<P><FONT color=#0000ff>close(handle);
" U# V+ R+ g* ~. v8 D( l! v- ?, `return 0;
9 A6 L8 `( d) L7 R5 z2 ^} ) H+ z& m$ S, M6 d- u4 x. C- F
</FONT>
2 m/ g) {4 ~1 ^, [: Y: D- A# \</P>4 @! U2 r4 P9 l5 L- y$ R
<P><FONT color=#ff0000>函数名: log </FONT>" o+ Q( V4 O. H1 N
功 能: 对数函数ln(x)
e. m. D( L; V, n" u6 L4 S( S用 法: double log(double x);
- q9 S& O2 X: g$ d# k' p程序例: </P>
/ w# v2 m: n- I( ?- {% X# Z6 u<P><FONT color=#0000ff>#include <MATH.H># B" v9 X4 _ C8 @9 ~9 m3 k0 S
#include <STDIO.H></FONT></P>6 } Q+ b p3 Q1 G9 W4 Z, Y* L
<P><FONT color=#0000ff>int main(void)
( W& i; {2 m1 |' | j{
8 n6 T- ]: Z' }0 q4 odouble result;
# E% C8 s! f, Ydouble x = 8.6872; </FONT></P>& @, E+ K4 v( F# O' L
<P><FONT color=#0000ff>result = log(x);
% O& B& Y& s! v7 R) W3 R* [. X! T: Iprintf("The natural log of %lf is %lf\n", x, result); </FONT></P>
/ H9 e2 a/ y' p/ s<P><FONT color=#0000ff>return 0;
+ h0 Y1 P( q3 m& \! h# b* Z}
; ^& A! N ?% m( H
/ x2 c, Z5 L/ |- v1 l</FONT></P>
" d, C: i8 ?9 o' l9 j1 z<P><FONT color=#ff0000>函数名: log10 </FONT>' J+ \' m3 Z8 ]7 a# g( x
功 能: 对数函数log 0 I4 K: q2 \4 W; g8 C1 \
用 法: double log10(double x);
" H2 R; p7 P) f' O3 G0 c程序例: </P>
# L) A) J$ g+ Z' l8 x<P><FONT color=#0000ff>#include <MATH.H>
% c, G! v$ A7 L; X, Y#include <STDIO.H></FONT></P>: H2 {6 Z3 L4 o* L5 ~' P9 w# g
<P><FONT color=#0000ff>int main(void) 8 R, x6 T$ r8 |. o0 O0 z
{ * F; Z) U+ @4 c3 W7 O% O, A" n7 b" S
double result;
( K8 _. J. J$ T8 Rdouble x = 800.6872; </FONT></P>
0 r: ~9 |7 V" m) L5 B& ~<P><FONT color=#0000ff>result = log10(x); $ K# x! w: m& r, z2 m
printf("The common log of %lf is %lf\n", x, result); </FONT></P>7 f: J4 `( H: g1 k3 x$ ] x
<P><FONT color=#0000ff>return 0; 4 y2 S6 P% H3 t' E5 G
} 7 t4 u& b7 @' E+ C- @' s
0 K3 A4 e1 R) r6 h5 z' }
</FONT> A7 U+ u' N$ G# Q
</P>
% A0 I6 H3 B4 W: P( z* Q1 Y9 W<P><FONT color=#ff0000>函数名: longjump </FONT>
5 L. l9 z8 m# Z$ M5 D. q功 能: 执行非局部转移 ; G3 ^8 r( i% M0 W# v" |' s
用 法: void longjump(jmp_buf env, int val); 2 `! H$ K7 r. [$ x; I4 ?. d
程序例: </P>$ V; _4 f* x1 e" c
<P><FONT color=#0000ff>#include <STDIO.H>+ V' g1 J* `9 q) p5 q4 v6 o
#include <SETJMP.H>, I. m$ T. U: ^; S
#include <STDLIB.H></FONT></P>1 _# F7 U+ N8 c5 k: W7 O' \9 F
<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P># Y) ]3 k( w. X, i6 T& ~% e/ v& i
<P><FONT color=#0000ff>int main(void)
; X2 q/ Q* ?& m* Q- S- C{ </FONT></P>* X+ P/ x# D$ ~5 v2 q9 C) v
<P><FONT color=#0000ff>int value; , x/ [/ w. s/ U: x8 y# H5 C ^
jmp_buf jumper; </FONT></P>; J9 I" p4 L2 l
<P><FONT color=#0000ff>value = setjmp(jumper);
9 A: Q) v+ c/ x: m; nif (value != 0) 9 p$ t X, {3 u- V+ {; {
{
8 l- }( h/ ]9 F7 Iprintf("Longjmp with value %d\n", value);
" s, Q) t1 p' ^9 W- D0 G! Y! Kexit(value); 0 w/ X, A: l: t6 }) G
} R# Y9 X* R1 l* L8 N2 j
printf("About to call subroutine ... \n"); 2 J# P/ H. |2 u8 y. q) S: Y
subroutine(jumper); </FONT></P>
% U% c$ J! K/ ~+ S2 G; R3 z% u<P><FONT color=#0000ff>return 0; - v3 u( L& D: Z0 c) q4 T' C
} </FONT></P>
: H4 B" N( Y" f5 W. v& w7 k<P><FONT color=#0000ff>void subroutine(jmp_buf jumper) $ m+ |0 r$ J" y) H+ l9 h1 F1 f
{
6 L' E; \! U% h# h2 s: ?longjmp(jumper,1);
- ?7 r6 Q. k. m3 `: s* Y( E} 2 z+ _' l' b1 G. N9 E
- J9 f; A: Y& S5 |0 W
</FONT>
9 W: B+ d2 }/ a9 \3 B& t</P>% u2 J8 C( ?1 v" e
<P><FONT color=#ff0000>函数名: lowvideo</FONT> 8 U [4 v5 E8 {2 a, z) f
功 能: 选择低亮度字符 % h, {" T$ d9 m; N
用 法: void lowvideo(void); ! d7 s! R4 D# |9 L
程序例: </P>
$ V5 s9 Y4 e# `2 j<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>
# _4 G. g# ^) ^3 |* z$ P<P><FONT color=#0000ff>int main(void)
) X% h) S: x% \% s{ + N$ L! x# U5 M6 X2 d
clrscr(); </FONT></P>
$ E, Q8 ?. \6 b2 L5 Y+ X: a<P><FONT color=#0000ff>highvideo(); 6 i' O& f: N0 ]) v) }
cprintf("High Intesity Text\r\n"); # Z$ b) n2 b7 v9 [+ \* F
lowvideo();
4 h7 Y" p6 z( K$ H$ kgotoxy(1,2);
% |: V. B. W" ~5 e8 }5 H& V# k( jcprintf("Low Intensity Text\r\n"); </FONT></P>5 t8 d, ^ P! A8 B: l, V
<P><FONT color=#0000ff>return 0;
% l1 J, Q1 y2 R5 X}
2 n9 l* I& \, ]% B6 k% e
$ R, s8 F/ k0 ?1 W+ v</FONT>" A7 q/ l; [% z9 ?
</P>
7 T( d% z. Q* O* r3 L<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>
8 g" Y6 X' p# d功 能: 将无符号长整型数向左循环移位 7 l2 O- V1 d" S- t
用 法: unsigned long lrotl(unsigned long lvalue, int count);
' [# y/ ?4 P- D+ W% Iunsigned long _lrotl(unsigned long lvalue, int count); ' V# Y' u! O# Q3 u
程序例: </P>
?' @& ^5 |* _<P><FONT color=#0000ff>/* lrotl example */ * k. x" M/ l* Z2 C* ^4 P
#include <STDLIB.H>
C2 q- c5 d2 @6 Y- p#include <STDIO.H></FONT></P>; s) |# g3 ?& C
<P><FONT color=#0000ff>int main(void)
! D4 y1 V( z& b! \5 i$ V{ ! n$ | N; y7 Z. F! V3 \5 p
unsigned long result;
& V# e8 y1 [" e) t( gunsigned long value = 100; </FONT></P>
( M) \3 C( h5 a9 }$ r& T4 _6 |<P><FONT color=#0000ff>result = _lrotl(value,1);
' U3 B: ]. U& x) Oprintf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>* P9 d: H& q& b0 a0 G- X3 ~
<P><FONT color=#0000ff>return 0; 1 k9 }: T- x! W7 ^3 m
}
1 S$ P* m- W, ^& a</FONT>8 H! p' O1 M& Y# Z
</P>2 b/ M9 k8 _. K" x# x
<P><FONT color=#ff0000>函数名: lsearch </FONT>
# \3 z0 Z5 g [# \功 能: 线性搜索 3 F( w' I w" s: d" P: W' g3 ]
用 法: void *lsearch(const void *key, void *base, size_t *nelem,
9 F8 Z k; n$ S3 N, f& ]size_t width, int (*fcmp)(const void *, const void *)); 4 X0 L0 Q! o" j. H
程序例: </P>3 j# J6 J7 Z4 b
<P><FONT color=#0000ff>#include <STDIO.H>& {- d2 @* f2 X6 ^' w' t: ]4 O
#include <STDLIB.H></FONT></P>( ^1 d7 v: a; y, S$ |* ^2 h6 K" U
<P><FONT color=#0000ff>int compare(int *x, int *y)
3 `% j7 y/ o4 D# T5 `1 y" W{
% S5 Q, ^! y( C! g7 J2 l4 Kreturn( *x - *y ); 9 p# @: u; N7 H/ _
} </FONT></P>
1 G/ t2 i' W1 A% U/ Q h* I, t<P><FONT color=#0000ff>int main(void) # ^0 b: B: j. e; r
{ * t1 y1 u Y$ Q
int array[5] = {35, 87, 46, 99, 12}; 3 d2 Q1 z% ]7 y7 z1 |. _
size_t nelem = 5;
" s+ |, O Y. F, i& u) V8 ~1 `: E( G H! kint key; ) S% W: b7 I% ~2 S
int *result; </FONT></P>5 z, @* p/ H' ^& `7 L
<P><FONT color=#0000ff>key = 99; : M1 v& p6 G, n
result = lfind(&key, array, &nelem,
9 [2 g( e" z2 h* Psizeof(int), (int(*)(const void *,const void *))compare);
3 X' o! I, ?6 O5 dif (result)
( w ?' s% B1 |/ ^1 x# e9 f; a/ |printf("Number %d found\n",key);
9 j+ D+ u, H; S0 _5 @; i7 b" ^else
" O" Q" \( x$ hprintf("Number %d not found\n",key); </FONT></P># m3 u1 l! V- o7 I% m
<P><FONT color=#0000ff>return 0;
5 ^& Z6 s2 X& L: t}
) ~/ v8 H$ n" h' E6 K: D3 L, M- H1 D3 L& ~8 R
</FONT>7 F7 |6 q( z# O! w1 A9 X
</P>
: ^' o4 w1 C; | s. F<P><FONT color=#ff0000>函数名: lseek </FONT>; N' X; A$ N& F" g: b! {
功 能: 移动文件读/写指针
& B$ R! t3 _2 `8 K用 法: long lseek(int handle, long offset, int fromwhere); $ n/ [5 Y6 Q; q/ p/ W Z4 I
程序例: </P>
# B- |/ f$ R! q<P><FONT color=#0000ff>#include <SYS\STAT.H>+ U @) g4 U. a' t& [5 g
#include <STRING.H>/ {. A8 ]1 O, k( o+ d, g
#include <STDIO.H>
/ _) H% f0 \0 F: i#include <FCNTL.H>
% t, Y) g% l8 Q9 {5 U" `#include <IO.H></FONT></P>
- A, f( o9 v: m4 D; B6 |<P><FONT color=#0000ff>int main(void)
4 U y$ O. Z: t{ 8 z0 D- {# x0 Y; P, G8 A$ L( |$ o
int handle; / C; d0 j3 |3 S( S7 |9 l
char msg[] = "This is a test"; ) P7 l. x5 g( m5 S; B
char ch; </FONT></P>7 Z: p: o3 D9 V! ^, o1 U3 {4 X& L
<P><FONT color=#0000ff>/* create a file */
% ^* U6 }1 C6 o& D: ~3 Rhandle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>
1 I7 z% F0 Z" Q! m9 v' b<P><FONT color=#0000ff>/* write some data to the file */
% n& v; `/ l3 N, vwrite(handle, msg, strlen(msg)); </FONT></P>0 T& |: Q1 v9 H' {8 l/ d
<P><FONT color=#0000ff>/* seek to the begining of the file */ w+ t+ p K" X7 Q6 ?* T! O
lseek(handle, 0L, SEEK_SET); </FONT></P>! ? d6 ]) e8 I+ M5 W7 T
<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */
+ c ~$ ?$ W# {, U( C# tdo
( K' _, H* n; _4 E# I2 E{ ) E2 y5 o. P$ m
read(handle, &ch, 1);
5 b' e5 p/ d6 J# ]5 g J0 @printf("%c", ch);
4 X2 c- ?' z" q; o8 L: a) W} while (!eof(handle)); </FONT></P>
* w$ P5 l% I- s: ^+ G2 H<P><FONT color=#0000ff>close(handle);
2 W7 `: M; E a, o! r* ]return 0;
) z6 @9 H- E" L s- s% {; _" {# T}
$ N/ S1 K5 ?' v/ c; r</FONT></P>
- s1 N- c# X* y+ x5 I I<P align=left><FONT color=#0000ff></FONT> </P> |
zan
|