- 在线时间
- 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>
: S( \2 B. v8 r4 C: g. e# b用 法: long labs(long n);
- y7 a4 T2 j% _) l/ H程序例: </P>9 W( ~3 o% X' b& @9 I# O H& K
< ><FONT color=#0000ff>#include <STDIO.H>- k% Z6 J% @! N$ q$ }& u
#include <MATH.H></FONT></P>3 d. W, i3 |7 g9 k+ r
< ><FONT color=#0000ff>int main(void) ( z. o4 [& z( o' o* O/ T
{
$ U# v' ]: T* z) a# c6 Along result;
% h7 b0 X1 B# `0 p. X7 g5 }long x = -12345678L; </FONT></P>- m* S& F7 b- e* ? _& V/ v
< ><FONT color=#0000ff>result= labs(x);
+ {9 ^6 n2 q. h5 n' d0 a- ]# mprintf("number: %ld abs value: %ld\n",
" F1 T" Q! D. s$ |/ \x, result); </FONT></P>
6 s% H+ X) Y3 h9 a1 ~" H" `3 E< ><FONT color=#0000ff>return 0;
. H. p* C8 @, _( c} - E# z: s, T" e: ~4 N2 ]# k& @$ }
</FONT>1 u3 v* f5 v. D# c; c: f! x8 t
9 _- A: n$ x$ V# C; ], S</P>+ H; d8 Q) s: Y( C5 B
< ><FONT color=#ff0000>函数名: ldexp </FONT>
! H# |7 ~2 X8 ]0 b. d/ K功 能: 计算value*2的幂 & W# n0 u' b g8 @. l
用 法: double ldexp(double value, int exp); 1 `3 v6 [8 W5 f1 d+ \/ A9 ]
程序例: </P>
+ \& L( g4 f0 v) G$ V9 X< ><FONT color=#0000ff>#include <STDIO.H>6 E2 Y& O- {) `$ B" j3 g( ~1 f
#include <MATH.H></FONT></P>5 e8 _$ S' C3 Z# F& v2 }
< ><FONT color=#0000ff>int main(void)
% b( |" k/ [6 Y$ h1 u4 ^{
. q8 R& J, U* N9 _- rdouble value; 2 Z' k" `/ Q E6 T
double x = 2; </FONT></P>
& j. M# {4 _) k# j< ><FONT color=#0000ff>/* ldexp raises 2 by a power of 3 ; b Z, }5 n& v" E7 l4 S
then multiplies the result by 2 */
/ D/ Y0 ?5 f9 X) J( Pvalue = ldexp(x,3); 1 H @ r. E' F" r4 c
printf("The ldexp value is: %lf\n", " C! G' Y1 X) M( }5 b
value); </FONT></P>
8 C7 q) {8 ^1 h$ p1 M< ><FONT color=#0000ff>return 0;
" R# @; {" f- D4 Y3 s} ; ~; B# X9 r! J3 K0 f- Y
6 J: I0 x* u+ M% e. f# S {, R7 @</FONT></P>3 X" I: y. s5 D4 w1 f h
< ><FONT color=#ff0000>函数名: ldiv </FONT>
2 ?+ e) e, _ H7 _, M* ?1 o功 能: 两个长整型数相除, 返回商和余数 8 X, C8 B7 w4 R% g/ p3 [) Q; r4 ~
用 法: ldiv_t ldiv(long lnumer, long ldenom);
: k9 B9 R& N6 A- M程序例: </P>5 D& F. R2 V4 K' {$ ?
< ><FONT color=#0000ff>/* ldiv example */ </FONT></P>) x4 M( ~4 b/ L3 |+ N
< ><FONT color=#0000ff>#include <STDLIB.H>0 U J+ @0 ^7 Z7 g3 }
#include <STDIO.H></FONT></P>
/ g% B3 F# o/ h% n7 S- j< ><FONT color=#0000ff>int main(void)
n9 E9 m1 v! m; X{ ; v* y% O% f9 T) f1 S0 }; ~
ldiv_t lx; </FONT></P>& K J. R: l+ y6 a* Z3 z8 j
< ><FONT color=#0000ff>lx = ldiv(100000L, 30000L);
8 {7 ~) K0 @* P# T+ E. F jprintf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem); 4 l8 G# ]4 H) X7 q. F. e3 I% V1 V
return 0; </FONT>7 \ Q2 {3 U+ |: E. e- X( X
<FONT color=#0000ff>} </FONT>
' {) @8 u0 i6 N( V4 _</P>
& x) j+ \0 h7 i& V& v! \9 B< ><FONT color=#ff0000>函数名: lfind </FONT>
% d! K* k1 V ?, n2 V! s' G功 能: 执行线性搜索 ! ~3 p* }6 Y3 _/ @ P0 o
用 法: void *lfind(void *key, void *base, int *nelem, int width, $ n5 h8 g7 _ h! `
int (*fcmp)()); 2 v. A" z- g& O8 V1 i2 w* Z
程序例: </P>
- P7 S h% u3 i& d; m/ J- w< ><FONT color=#0000ff>#include <STDIO.H>. I8 Y3 a- G9 m, a( u2 W
#include <STDLIB.H></FONT></P>& G2 M8 I. m! |
< ><FONT color=#0000ff>int compare(int *x, int *y) 8 j4 _/ ]6 Z }1 y H) V
{
x9 P# }& p0 V' I# g& ^" Nreturn( *x - *y ); % U' @1 K% o; Y" r6 n
} </FONT></P>; U& n) ?# W" Q6 C f
< ><FONT color=#0000ff>int main(void)
2 f8 K" e8 l/ ^$ B0 w{
) ]0 |& |9 I" O% E0 [int array[5] = {35, 87, 46, 99, 12};
1 N3 l' V2 v' A0 ]' Hsize_t nelem = 5;
) Z ]' V+ U0 m6 i" d( c7 P" uint key;
$ [, i1 _' u% |; Nint *result; </FONT></P>
9 l/ f0 ]1 n I5 [; K# B. O5 F, }< ><FONT color=#0000ff>key = 99;
- m: X9 c$ E& D! K5 ~ B8 @0 w7 iresult = lfind(&key, array, &nelem, " v: C& Y- `/ |
sizeof(int), (int(*)(const void *,const void *))compare); 6 \% H) u9 I0 h! C' m. Z+ }
if (result)
. ?) e( I# C2 S& u0 j) Mprintf("Number %d found\n",key);
2 Y# D0 I4 T! [0 helse / h# s3 R }) Z/ e
printf("Number %d not found\n",key); </FONT></P>
3 Q8 Q5 g3 M' ?; G2 i% ^9 c< ><FONT color=#0000ff>return 0;
" {( R' Z+ j' p0 h} </FONT>
" s1 n. u" z, {6 E5 \& M! U2 H% u% {2 W1 h, e3 P" G
</P>% h' n! M0 S: c7 \! s7 D3 m' p
< ><FONT color=#ff0000>函数名: line </FONT>8 S: [2 C, {* P: U0 v8 ]
功 能: 在指定两点间画一直线
5 k, {3 e# ~* i" u1 x: Z用 法: void far line(int x0, int y0, int x1, int y1); 9 n; v G6 m( @& I, y
程序例: </P>
) L! F( n5 M; Y M* { G< ><FONT color=#0000ff>#include <GRAPHICS.H>
/ Z3 X) v' {7 D% F( }* M#include <STDLIB.H>
+ W9 L T: Y- |; P#include <STDIO.H>4 U2 h1 p4 ~- g0 L
#include <CONIO.H></FONT></P>
. s7 t- E# P/ I5 n< ><FONT color=#0000ff>int main(void) 8 R6 t/ g" M' g# v) I- O4 p
{
; g/ V4 X u% x. q! M- q7 D- n/* request auto detection */ e9 q! W2 N+ W( |1 {* e! s M
int gdriver = DETECT, gmode, errorcode;
* |6 y9 Y! y" T% G% wint xmax, ymax; </FONT></P>$ x9 l9 \9 U( G7 t
< ><FONT color=#0000ff>/* initialize graphics and local variables */ 6 ?' Q- r/ c( v
initgraph(&gdriver, &gmode, ""); </FONT></P>
: k4 z7 A, p- k< ><FONT color=#0000ff>/* read result of initialization */
! S# V% V0 {! b5 j5 lerrorcode = graphresult();
" o7 V/ M0 S! e/ \. E5 \) H5 f+ c/* an error occurred */
* L- X% ^* P9 r9 |8 `, G' }( @, D* Iif (errorcode != grOk) H2 l9 F( K' m5 s7 c3 l% M
{
# m1 w% p4 d& \4 b/ u6 sprintf("Graphics error: %s\n", 7 ?7 i8 z+ Y% ]( |, j) m) g& w
grapherrormsg(errorcode)); + c+ ~; n7 J. f% z' q
printf(" ress any key to halt:");
8 k* t! ^( F/ Fgetch(); 5 N7 i5 ]4 s/ [' L; V9 j- q
exit(1);
. {! ~4 ?( ^& K( ~' V} </FONT></P>/ I6 f7 u1 E3 T+ q8 T8 n0 H0 F* @
< ><FONT color=#0000ff>setcolor(getmaxcolor()); 4 _* L7 k( y6 u/ b$ t1 ^
xmax = getmaxx(); - w/ n3 J) B+ f' S, u
ymax = getmaxy(); </FONT></P>
! ~# r) `% ?, @8 f) E9 m& \< ><FONT color=#0000ff>/* draw a diagonal line */
% h- q, W& A- K' m1 Dline(0, 0, xmax, ymax); </FONT></P>
( p# H3 F4 o, H3 J: M9 w< ><FONT color=#0000ff>/* clean up */
- \7 o+ E- G% Rgetch(); T9 b: S1 J) T, y/ [, o$ w
closegraph();
! D. g2 j; ] ?0 R X2 Yreturn 0;
8 Z7 X' E' Q2 ~}
, D( A) y& v" E* R& z5 A</FONT>+ H2 A" E) R& C/ f! _! \8 v& x
</P> ?9 }; s; f2 G3 I4 G6 G8 K, W
<P><FONT color=#ff0000>函数名: linerel </FONT>
% |5 ^$ z- o2 U$ C! o0 U功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
. J1 F; S5 R8 y) ^& n" d4 G用 法: void far linerel(int dx, int dy);
$ }$ Y/ Y: U9 b- J) e z程序例: </P>
! s7 {8 @* o" U- M<P><FONT color=#0000ff>#include <GRAPHICS.H>0 w0 C' A5 a5 W$ B7 Z7 k, q6 ?5 l0 }
#include <STDLIB.H>% X1 }" f2 O; H
#include <STDIO.H>
- k3 K$ K- w) C6 E+ d#include <CONIO.H></FONT></P>
* ~* v9 T# y. g$ [+ c/ u<P><FONT color=#0000ff>int main(void) & @7 L" M$ u+ w9 }8 y1 k/ d! \* u
{
3 `0 }" n; v! q7 A/* request auto detection */ 4 A6 n; I* T6 X |: r2 D7 Q/ a9 g
int gdriver = DETECT, gmode, errorcode; 0 }2 g/ ?6 B- M1 p M b. l! z2 R9 C9 u: \
char msg[80]; </FONT></P>5 _/ Y. B' ^7 F, `* ~0 \/ b
<P><FONT color=#0000ff>/* initialize graphics and local variables */ & Z& z. w3 f1 n: M2 W4 P% O
initgraph(&gdriver, &gmode, ""); </FONT></P>
2 K% p Q' w$ ^8 r<P><FONT color=#0000ff>/* read result of initialization */ # R ~. T8 ?' t" T! ?: p# y! H
errorcode = graphresult(); ( `* e" a8 D. e1 f( B
if (errorcode != grOk) 9 x) }# _3 A2 k8 J6 e2 c, [
{ & h- O9 v7 V/ M7 q8 p
printf("Graphics error: %s\n",
* [8 S: b; v6 I6 D) \7 c$ Hgrapherrormsg(errorcode));
5 l( d7 F. J2 \2 T( C1 f0 zprintf("Press any key to halt:"); 5 ~- c7 V8 @2 Y0 _) x) P& ~
getch();
" h- }3 U7 [" R, X0 ^exit(1); 5 E1 A+ O( ]. H2 a
} </FONT></P>( v0 v4 S' |! P& F. Q
<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
# s& u9 d! d1 j0 j: m+ C4 `% Mmoveto(20, 30); </FONT></P>+ ?4 s# S. m- D2 m" P- v/ X: Z5 _8 g
<P><FONT color=#0000ff>/* create and output a % x" F: u( U8 @) V
message at (20, 30) */
) `, n" ^& X! M! {, psprintf(msg, " (%d, %d)", getx(), gety()); ! t; [) y& h- y+ k, ~
outtextxy(20, 30, msg); </FONT></P>3 M& r$ A8 u/ s
<P><FONT color=#0000ff>/* draw a line to a point a relative
7 l) u d3 h0 U- ]0 B! S" }' S, [distance away from the current . `6 U" Y8 h6 c+ M
value of C.P. */ & o4 A, O$ k; I0 i% _
linerel(100, 100); </FONT></P>6 R) Q3 b8 @8 \
<P><FONT color=#0000ff>/* create and output a message at C.P. */ & n& l+ u" V9 i* ~/ U; z/ }- M& ~
sprintf(msg, " (%d, %d)", getx(), gety());
3 n8 B+ f7 f2 Louttext(msg); </FONT></P>
. { z, c* i9 J) I$ Q' ~6 ^" _<P><FONT color=#0000ff>/* clean up */
& O6 b- |/ U# ggetch(); " p# }8 D7 K' @% H1 o3 t% y9 p6 H
closegraph();
3 u$ W) d: I( i4 F3 V; ]; p& Kreturn 0; 1 r1 m4 V4 H* q8 m
} </FONT>2 n7 h" H; ?. C: ~: Q- t/ N
</P>
" B9 ^% k2 [% K<P><FONT color=#ff0000>函数名: localtime</FONT>
5 X% \" @4 c' x! `) y9 b功 能: 把日期和时间转变为结构 - h( P) X+ k2 V/ \9 P% P" S
用 法: struct tm *localtime(long *clock); + Y1 p# Y8 G. |# U. w4 [
程序例: </P>1 A: w. \0 N% x& t! e5 u
<P><FONT color=#0000ff>#include <TIME.H>
% \' @# `( r4 l7 Z; E#include <STDIO.H>
1 Q- W- @- m. P# [9 r* e# ?" Z" @( G$ h+ n#include <DOS.H></FONT></P>
( |- Q% k4 B# Q<P><FONT color=#0000ff>int main(void) % N. E% @! I) _; E6 _; Q: |+ E) T
{
. i9 l# q9 H$ L6 v. {time_t timer; ) O$ b/ G. G/ R) Q" A, A7 x# G
struct tm *tblock; </FONT></P>1 p" D/ K: b6 b/ i {: M4 K
<P><FONT color=#0000ff>/* gets time of day */
6 z: Q, o' Z( V) J4 V" wtimer = time(NULL); </FONT></P>
. E; m+ F% w! u, E' T" ~<P><FONT color=#0000ff>/* converts date/time to a structure */ 8 J, N6 q' V) e ^ }3 a) q4 r; B0 W, O
tblock = localtime(&timer); </FONT></P>( s4 Z( K7 j* J* W# X b
<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>
2 g: G g' c, f6 h% O<P><FONT color=#0000ff>return 0; a1 q z* o! @: O. |
}
7 q8 h! l. i: {" v5 X7 ~! ~& l6 d
& u% Z, Z* O8 n7 M c
</FONT></P>4 x* z5 y3 w6 q: ~5 t O4 Q2 \" q) i
<P><FONT color=#ff0000>函数名: lock </FONT>. \' X2 K. `% b4 l4 ~
功 能: 设置文件共享锁 # }9 `5 _ ?' e' p. b* p
用 法: int lock(int handle, long offset, long length); 6 l$ S. M( ?( T& y2 @
程序例: </P>; J' S, N5 A- I3 O2 s+ n
<P><FONT color=#0000ff>#include <IO.H>
( G7 i) Z+ o% u& \( M8 ^#include <FCNTL.H>: E4 h* m8 ?- X# H( _
#include <SYS\STAT.H>
% t; \5 Q) @! O#include <PROCESS.H>
2 d, G' Q3 x3 Z u1 T#include <SHARE.H>
, y: o, U$ d1 T; b. g2 \) G$ P+ c#include <STDIO.H></FONT></P>1 C# u: c0 V* N) Z# a' x3 d/ K9 c
<P><FONT color=#0000ff>int main(void)
) a- ]8 \$ p! M5 w+ o; W8 q{ 3 t7 y& g0 l: s2 q; P2 R. G
int handle, status; ( X: N2 a) K! B$ B4 o2 M% @ l
long length; </FONT></P>
$ D b6 H8 d0 c$ \' |# ^0 |. c0 R8 J<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */ / q) w8 L, g e* }7 B
/* file locking to function properly */ </FONT></P>2 i' Y* \" U! M' J: P
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",
- t0 ~4 A. n+ g; M" HO_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>9 E# o1 y" R* `1 P3 U1 I
<P><FONT color=#0000ff>if (handle < 0) . {7 ? Y! h! M! g0 F+ C+ |
{ 2 [ S; q, T! R% R- j5 Y
printf("sopen failed\n"); . y. x' q* z0 n$ ]! `
exit(1); 2 I# O8 q$ s/ T$ H
} </FONT></P>
3 r" L$ o: K& s: x<P><FONT color=#0000ff>length = filelength(handle); * N* O0 i- n0 \0 n
status = lock(handle,0L,length/2); </FONT></P>
7 P- k* z' c1 v6 w% [<P><FONT color=#0000ff>if (status == 0)
~) k; E. _& U2 N' _$ Wprintf("lock succeeded\n");
& T: |$ u1 C2 i5 T6 b$ ^else $ G2 x6 Z+ [- F' p3 D. O4 @0 |
printf("lock failed\n"); </FONT></P>0 ^& d3 B. X+ V% I4 x% B1 V
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>
" c& ~7 R. a( R. e9 H9 k<P><FONT color=#0000ff>if (status == 0) # N0 l9 F, v: C+ V1 W* P
printf("unlock succeeded\n");
% W; B) C* p4 f4 X4 z! Z& aelse " P2 k; y {4 `
printf("unlock failed\n"); </FONT></P>3 ~5 J/ u/ x- [3 v$ c- C9 g
<P><FONT color=#0000ff>close(handle); : p2 l: o4 C/ l, ~* X; I$ }
return 0;
3 y+ P7 I' Q" M} * x+ W, |. S& O$ W% w9 ^
</FONT>% L9 b( F& k. K" B& B
</P>. @0 }$ O) K1 N( E& q( \6 A# g* d
<P><FONT color=#ff0000>函数名: log </FONT>. H1 N5 E5 N! }& Y" V+ K7 Y
功 能: 对数函数ln(x) # `/ G8 ^! E$ |3 R" I: c
用 法: double log(double x);
d' C! S$ b. f# L3 e& U/ y1 [) B程序例: </P>& m+ b2 v0 @( M0 ^- U% o7 J
<P><FONT color=#0000ff>#include <MATH.H>0 U4 H+ A+ m; `) b; @- N
#include <STDIO.H></FONT></P>
3 d& u/ W, F+ o# K5 t$ l3 W<P><FONT color=#0000ff>int main(void)
) R2 N" F- H- g# ^/ I6 e{
, f5 y8 d" h/ Xdouble result; ) t( N n4 P8 B" m, S5 N# G
double x = 8.6872; </FONT></P>
% u# F; E; k0 M0 N l+ u<P><FONT color=#0000ff>result = log(x);
0 I, W( _3 w) P6 V/ z& c7 ?# bprintf("The natural log of %lf is %lf\n", x, result); </FONT></P>& z2 R" o3 k1 z- f
<P><FONT color=#0000ff>return 0;
6 I6 C5 o3 u8 n0 R}
! P9 H3 ?6 K' C$ L! { J0 ~4 Y' `+ \& Y6 n+ ^
</FONT></P>
4 R* x4 O, A( a- @+ B, V<P><FONT color=#ff0000>函数名: log10 </FONT>0 [! ]- J7 R% |5 F; ], D: Z- T; ^
功 能: 对数函数log 4 ^; i5 u# M( L( p. v* p- o
用 法: double log10(double x); % w2 ^1 w. h! O! R' Y! F- n
程序例: </P>; v5 z# Y4 ?. A0 v; ]: p+ C
<P><FONT color=#0000ff>#include <MATH.H>1 A' r f9 d" `" w& g+ o# w8 ~5 f3 B
#include <STDIO.H></FONT></P>( E% e9 x9 s; z* g9 [ O
<P><FONT color=#0000ff>int main(void)
2 ]5 N6 g* h4 c{
. w$ [/ b; j" ]7 {$ Edouble result; - n5 h; p6 C9 s' c- G! y# [
double x = 800.6872; </FONT></P>
* D" C# r0 U) y5 F& O( l<P><FONT color=#0000ff>result = log10(x); / L: d) R. {( y: g
printf("The common log of %lf is %lf\n", x, result); </FONT></P>
# a& I7 T0 I/ U6 s& R% Y# x<P><FONT color=#0000ff>return 0; 3 {3 {& M" U' @* @4 ^
} 4 X+ b. M9 C$ \0 ?2 Y8 n3 e
* C" @" p# g1 J' h- R9 O
</FONT>
5 ^$ A! h! t: e( ?</P>
6 t8 q+ [+ s' L; D( K<P><FONT color=#ff0000>函数名: longjump </FONT>1 q7 A3 Y- i n- r' C" M t u
功 能: 执行非局部转移
3 m) @5 J$ C O7 }% D/ o; p用 法: void longjump(jmp_buf env, int val); % m i0 d+ y$ H2 _% E# w8 T3 L
程序例: </P>) d0 Q' J" @! y+ n0 b3 p: x
<P><FONT color=#0000ff>#include <STDIO.H>
: ~: q6 B2 [. G4 u8 X+ f: h' h4 O#include <SETJMP.H>& r$ c0 x" t3 \( O
#include <STDLIB.H></FONT></P>4 j( Z# M2 b% h j
<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P>
2 [# \# q& T+ _* H% W/ J" E<P><FONT color=#0000ff>int main(void)
( \- S8 ~5 q8 R{ </FONT></P>8 ~' f! F2 x# m6 l
<P><FONT color=#0000ff>int value;
* V' Y: x0 v- o; T& Xjmp_buf jumper; </FONT></P>
$ T8 t# T4 p4 e<P><FONT color=#0000ff>value = setjmp(jumper); 3 B3 x- i. I, `
if (value != 0)
6 Q" ?7 g l. a3 U: o{ + m* Z6 H% J7 r% v& U! K( y0 w- h
printf("Longjmp with value %d\n", value); ) W. G+ y$ z5 q/ j; V
exit(value); 2 K. j6 Y0 L9 e( G2 ]3 D. n: Z$ H
} . h+ U/ K9 _+ Z/ L$ j
printf("About to call subroutine ... \n"); , Z$ G6 {. h6 j8 e8 A, t
subroutine(jumper); </FONT></P>
% ]$ F: O- I8 k4 I' l2 F<P><FONT color=#0000ff>return 0;
9 m8 \+ ~7 G1 @/ x7 U- K} </FONT></P>
@; n! K9 X' @4 R8 Q<P><FONT color=#0000ff>void subroutine(jmp_buf jumper)
8 n5 c) x( U2 y{
" Z; z, p) c) K2 F6 Olongjmp(jumper,1); 0 d' s5 s* `( n5 a3 i4 R
}
# Q5 S, X" s! E1 N W- R% g9 ]% x( ]
</FONT>
+ C7 ?0 v8 P4 n+ r" @</P>
- D! N! E1 y% |) g5 N# E<P><FONT color=#ff0000>函数名: lowvideo</FONT> ' A5 [7 _! {: h3 H+ x' w4 p6 K9 [" B
功 能: 选择低亮度字符 5 b) E. }0 n" d) P
用 法: void lowvideo(void);
" l/ G4 k$ k6 }) U# B' d程序例: </P>2 D3 H3 \2 z- Y% _/ \% P! k0 ?' C* t
<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>! [5 c" y8 F/ w8 J* a$ Y/ L$ _
<P><FONT color=#0000ff>int main(void) ) B1 e8 D7 I7 S' W2 B1 w
{
# ~" J1 ]: m N( t: b" D5 dclrscr(); </FONT></P>
& l8 [# b" E a( l9 `! b2 i<P><FONT color=#0000ff>highvideo();
' [9 y2 C. C8 k4 {/ Wcprintf("High Intesity Text\r\n");
' E4 J8 B+ }7 ~% q7 @$ d7 p& ?lowvideo();
; ^/ ~# u5 D. Zgotoxy(1,2); 3 e5 W _( m! @1 {* }
cprintf("Low Intensity Text\r\n"); </FONT></P>' V* G+ y/ `. h' A
<P><FONT color=#0000ff>return 0;
3 P7 f- d% H m/ o! M/ b} $ B9 N, x4 M3 f' S# Z% \
" C9 ^; F6 y/ q2 s# h
</FONT>
2 \# c& m( M; S2 j$ }" x</P>
& \( P* F' B3 n/ G; S* z: a; Y: C; e<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>
_4 v2 Y, w$ I) ?0 B功 能: 将无符号长整型数向左循环移位 * N2 i: `- H& r3 ?
用 法: unsigned long lrotl(unsigned long lvalue, int count);
9 K/ a" ^0 {3 x0 {: C, ?( y1 ^unsigned long _lrotl(unsigned long lvalue, int count);
$ S1 r5 }/ c6 i E- h5 g* @1 [程序例: </P>7 a1 y- `; Z. L- [& d
<P><FONT color=#0000ff>/* lrotl example */ 6 t, d4 ^) r& ]% Q- d, ^& e& Q) K
#include <STDLIB.H>
5 l8 Z, u1 h# p' c8 a1 @! G* |#include <STDIO.H></FONT></P>
4 _0 a/ |# ]8 C, j<P><FONT color=#0000ff>int main(void) . j. V- w( t# l" g4 j F
{
' O! j0 J/ @. Z* u' B$ qunsigned long result;
; f! {0 F u8 H; m- Bunsigned long value = 100; </FONT></P>" P* O& R( X2 `6 x( Y: i
<P><FONT color=#0000ff>result = _lrotl(value,1);
, Q |2 {$ r y4 i* V rprintf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>
: b& T& T5 {: ?6 n, W$ E7 ]: R<P><FONT color=#0000ff>return 0; 5 N# l$ d2 M' b2 f
}
( ], M* d1 P( F' g! s</FONT>
0 z( e/ o2 m% j' m3 P</P>
& \+ j0 d, N& D! j<P><FONT color=#ff0000>函数名: lsearch </FONT>
7 Z* g8 N6 Y6 q: I# g功 能: 线性搜索
3 }7 L/ q& J. J* F; A8 S! l9 f用 法: void *lsearch(const void *key, void *base, size_t *nelem, . I m5 s' u& T/ ?* d, F; D. o" }
size_t width, int (*fcmp)(const void *, const void *)); / l5 I& R) s2 D
程序例: </P>- K0 c) C# `$ g) Y. c
<P><FONT color=#0000ff>#include <STDIO.H>) C% b! c# M; n! v- s4 w
#include <STDLIB.H></FONT></P>0 O& y) Q' t Y- H2 j& X8 |% D
<P><FONT color=#0000ff>int compare(int *x, int *y) 5 H9 l c1 w. @9 j; X2 P
{ 0 B6 R; k4 V: r
return( *x - *y );
$ n$ Y) y0 l1 E+ T3 c2 c" `# B' ^} </FONT></P>
- l1 p3 D' [7 }, U<P><FONT color=#0000ff>int main(void)
/ i6 }" e, J2 Z' l' n2 v2 d{ 9 ^+ M6 _7 [! u0 [* ?
int array[5] = {35, 87, 46, 99, 12}; # B- P( C3 \( P( M8 O
size_t nelem = 5; k( e5 B0 i2 w' q- A# d$ r J
int key;
4 T4 `9 W Z8 j0 _int *result; </FONT></P>/ Q& i" c0 q5 F3 m
<P><FONT color=#0000ff>key = 99;
6 K; [7 o- W) ?result = lfind(&key, array, &nelem,
F1 v# i: R+ y, G0 Asizeof(int), (int(*)(const void *,const void *))compare); $ M1 V! h6 Y$ V
if (result) 8 V! k1 P* [3 r* r) O Z: w
printf("Number %d found\n",key);
3 m& t1 U5 X- n8 D3 C) oelse
8 ?, _* S/ V6 n" F gprintf("Number %d not found\n",key); </FONT></P>9 I7 [2 n7 F$ P1 L9 ~
<P><FONT color=#0000ff>return 0; 7 |& V) L3 m# S
} 2 T+ |! M8 m, v: r4 C. P& p# ~
% G1 ^9 ^' W9 n/ w+ K' n4 R</FONT>
& N; ?$ ]. c. Z, q/ p' |</P>' T) o' ^8 \$ N, n* p) R5 E
<P><FONT color=#ff0000>函数名: lseek </FONT>" n Q0 ?% o( {1 q( z% b
功 能: 移动文件读/写指针 0 S* w8 @. q' L/ E) e3 t" E
用 法: long lseek(int handle, long offset, int fromwhere);
$ N _- ]& E% U3 Q, y3 p程序例: </P>
, O7 s9 R- n2 F& |% |0 W<P><FONT color=#0000ff>#include <SYS\STAT.H>
# h" r9 L9 n% V, e) O% b% i#include <STRING.H>
$ N" o5 R2 W- _9 V4 e5 [#include <STDIO.H>
0 \6 K* q2 h% i: d, [& D% ~#include <FCNTL.H>/ t, T% {% R N; J6 ~1 O
#include <IO.H></FONT></P>2 ]( D3 x$ m9 W
<P><FONT color=#0000ff>int main(void) & b: e8 I& ]3 R' H' \. A
{
6 R) s) R6 Z3 N/ [' U. M6 @int handle; ! {& n# J) Z, @2 X: G
char msg[] = "This is a test"; 4 W5 O" u/ M* ~
char ch; </FONT></P>( d8 a" K: A$ s$ j
<P><FONT color=#0000ff>/* create a file */
, o) t) |7 S! Z# d! y% xhandle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>
( ~9 ~. l% B# S5 o7 l5 Z3 Y<P><FONT color=#0000ff>/* write some data to the file */ 4 w! K! ?& G) Z: V% z5 W2 d( S) j
write(handle, msg, strlen(msg)); </FONT></P>
" E- z; l/ H* z; @<P><FONT color=#0000ff>/* seek to the begining of the file */
9 n; K* s& H3 p& _3 flseek(handle, 0L, SEEK_SET); </FONT></P>
1 t3 A |0 R0 j" |4 O+ v! A; Z1 M<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */
. U- |" l, {/ x8 ~2 `do
4 e' Y' H6 c( u/ ]5 {( F{ $ g! \; D2 ^& `7 O2 ]! t
read(handle, &ch, 1); . |$ g4 y. ?* X8 o( f# |: l5 i* X V
printf("%c", ch);
5 U" k e$ ^1 r. A+ n: p! x} while (!eof(handle)); </FONT></P>9 T3 y6 a1 J4 F! U: i
<P><FONT color=#0000ff>close(handle);
5 `! A5 m' |- W3 U" b+ x1 zreturn 0; % |# w/ d; w" X$ L3 _
}
* n5 q9 v6 S4 Q+ ^( f* I</FONT></P>
* |- X1 t n* x; D0 R<P align=left><FONT color=#0000ff></FONT> </P> |
zan
|