- 在线时间
- 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>) d1 E- N- S# N* p6 h/ D
用 法: long labs(long n); 1 V) y4 u. g/ @9 |1 _
程序例: </P>) |! w% S3 k/ U3 a @7 e+ e- N
< ><FONT color=#0000ff>#include <STDIO.H>
) \, u6 n- t8 T) T) u#include <MATH.H></FONT></P>; Z) v8 r0 x7 o3 J6 s
< ><FONT color=#0000ff>int main(void) 2 V3 f# { ~- ?" g+ |9 ?3 ]8 ?, E
{ 6 s. I9 }% W; a5 t7 e- c, o
long result;
( v7 x- U8 M5 ^( Q& Y* x- flong x = -12345678L; </FONT></P>
4 d$ C; D3 t2 w+ E$ m& x< ><FONT color=#0000ff>result= labs(x); 7 X. z$ T& j; \( y6 U5 E
printf("number: %ld abs value: %ld\n",
! N( P5 W, X3 S L' `6 t+ u8 `9 Ox, result); </FONT></P>
5 a1 o3 L# t' }) W( O< ><FONT color=#0000ff>return 0;
+ }8 w V% J( M' ~7 g; `} * S9 |/ G( `1 Y$ X9 N: [1 G1 J
</FONT>
) H0 ~1 N% B2 b' B+ j: T# y8 \8 z
( I1 Z8 C3 Y0 N- D4 m</P>
/ l7 @5 W' a1 P* ?- [/ S< ><FONT color=#ff0000>函数名: ldexp </FONT>6 ^, _; h7 U, k) O$ ^0 K) g
功 能: 计算value*2的幂
2 m& W9 L7 q& o; h* E& d用 法: double ldexp(double value, int exp);
* F" Y9 K1 J4 y! q2 L程序例: </P>
; t: `0 I+ g. B/ U1 U- V) V5 x7 y< ><FONT color=#0000ff>#include <STDIO.H>
' w9 i% ~3 V! r- {7 Y- H#include <MATH.H></FONT></P>( Y1 G3 N0 ^' }! }7 w( ^
< ><FONT color=#0000ff>int main(void)
7 _+ T0 @7 N) n/ b4 h+ `# ?{
. n9 Z0 {. B0 [0 D4 f9 F# Cdouble value; + R, O$ n8 e; r' d! e0 Q9 m
double x = 2; </FONT></P>
$ s) y y. ~0 {0 m1 F< ><FONT color=#0000ff>/* ldexp raises 2 by a power of 3
# y) e# p9 I7 D4 _then multiplies the result by 2 */
% {# F4 P9 x. x9 U/ M6 mvalue = ldexp(x,3); 2 y2 T! J" ^; w9 j& b
printf("The ldexp value is: %lf\n", # K9 P- @. C* B
value); </FONT></P>/ s* C) F% _2 n' S1 J- h' Z
< ><FONT color=#0000ff>return 0;
& a# q D+ {8 Z: y3 G- g7 r7 ^} " s0 u1 G6 @! C# t
% @6 p0 ?; T' h' g2 b: K2 Q# h</FONT></P>
; v& j7 `& [% o! \& I. o< ><FONT color=#ff0000>函数名: ldiv </FONT>+ ~0 {9 d4 O: ^ V1 O% P; Z
功 能: 两个长整型数相除, 返回商和余数 ; |8 q+ o6 B" E9 r
用 法: ldiv_t ldiv(long lnumer, long ldenom); 9 d$ B6 c$ Y9 ]7 i
程序例: </P>7 w$ ^1 t, X9 E; X. L# J
< ><FONT color=#0000ff>/* ldiv example */ </FONT></P>0 b% Q, R% }% j
< ><FONT color=#0000ff>#include <STDLIB.H>" e! @! H7 I7 J- v4 l2 S8 x
#include <STDIO.H></FONT></P>- \2 x% G" m( G1 x+ ~* \6 q9 O3 A
< ><FONT color=#0000ff>int main(void) 6 |7 H3 r8 c1 W3 a7 c
{
4 C& t- H+ c( i& Bldiv_t lx; </FONT></P>5 \+ Y9 A2 j0 O2 j: E5 Z0 s
< ><FONT color=#0000ff>lx = ldiv(100000L, 30000L); / I# c* a: x2 e. M1 D! i
printf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem);
: p6 A9 \% j0 V' P. c4 l6 Hreturn 0; </FONT>
6 P- a' m# p( C<FONT color=#0000ff>} </FONT>
4 @0 G) D1 [: i</P>
. L- C0 N( ^+ {2 [% w# S% v< ><FONT color=#ff0000>函数名: lfind </FONT>
# F5 j; h) O- U+ b0 N4 A功 能: 执行线性搜索
1 K: V; i& f- _) n用 法: void *lfind(void *key, void *base, int *nelem, int width,
4 F$ K) U3 Q- `+ s$ y- K! B) o- nint (*fcmp)());
* |; H/ L5 |2 d' O; s/ `程序例: </P>
) A4 M. e& O3 ?& }& i( e' R0 `< ><FONT color=#0000ff>#include <STDIO.H>
5 W, m+ l z" t: b. A! R% p#include <STDLIB.H></FONT></P>
# _# j$ W" @2 Y5 f< ><FONT color=#0000ff>int compare(int *x, int *y)
( L z8 N' }; w8 d; x; t: D{
# K1 t# M+ K+ l: F9 o$ A- jreturn( *x - *y );
" e( R# y! U4 o1 t4 O7 e9 d" |1 a} </FONT></P>
2 J# V" O- y: P% \" {( Q: W* `< ><FONT color=#0000ff>int main(void)
E) R5 V+ {' b& j N{
" Y* ^- M$ X0 l2 }int array[5] = {35, 87, 46, 99, 12}; , r6 D5 u: o% d u
size_t nelem = 5; 4 D+ A) W$ S0 e. C, T; A
int key;
1 K- [/ d: v$ Rint *result; </FONT></P>
- M* i& x3 e# N( H! P7 T< ><FONT color=#0000ff>key = 99; ; b0 h! R: W# q, i7 y! T+ C4 M
result = lfind(&key, array, &nelem, . _9 q3 K }4 F0 @
sizeof(int), (int(*)(const void *,const void *))compare);
. v) \9 p5 Z L0 {if (result) ' d a3 d- ?# m6 ^( j
printf("Number %d found\n",key); 8 t q6 J4 E/ L
else 4 ~+ u- u( g. _) \/ M/ d1 S1 m }
printf("Number %d not found\n",key); </FONT></P>
2 ^5 ~% y7 e, _5 u( J< ><FONT color=#0000ff>return 0;
* t- Q1 M; h/ B' u" p2 S} </FONT>
- Z3 E% \: j* L0 F9 m2 V
0 n' |2 M+ J! U5 c</P>7 _5 \3 R$ a8 U" r2 i
< ><FONT color=#ff0000>函数名: line </FONT>% H, X$ Z8 w* g. H! P
功 能: 在指定两点间画一直线 5 h1 c( \& c: I5 O) A3 w
用 法: void far line(int x0, int y0, int x1, int y1);
) j2 g; \3 C1 B) Q6 S7 S程序例: </P>
$ B/ x1 E( `" ~/ T# t8 [< ><FONT color=#0000ff>#include <GRAPHICS.H> D( m' u4 p4 p- U9 ^
#include <STDLIB.H>& v! l# Z+ ~# H* ^& ?
#include <STDIO.H>
x9 ^4 n6 n% V2 x/ g#include <CONIO.H></FONT></P>7 ^2 A7 a1 s+ l$ n
< ><FONT color=#0000ff>int main(void) " f& u$ u1 u6 v% ?3 |' }5 l: p
{ ! s. n0 z$ i$ J1 J1 K) Y, E* Y
/* request auto detection */ + X8 h7 U3 [7 ~9 \) m4 T
int gdriver = DETECT, gmode, errorcode; " D$ M, Z+ ?. }1 a+ ~/ l! q
int xmax, ymax; </FONT></P>
# X2 c- Z2 C- ?) a6 H< ><FONT color=#0000ff>/* initialize graphics and local variables */ ' j1 K1 Q- D9 m5 Q, C
initgraph(&gdriver, &gmode, ""); </FONT></P>' _" d% F- y9 C3 j. u- S; M0 r1 m1 n
< ><FONT color=#0000ff>/* read result of initialization */
3 t& H0 t" L8 h- I; u+ zerrorcode = graphresult();
# }$ U/ U- S( A3 U( b; k/* an error occurred */
+ t) D2 [! h7 ^, Z% `+ f6 D4 }if (errorcode != grOk)
; b; p6 x* n! e) c6 P{ 7 \" `( b$ o# w# ]7 y; q
printf("Graphics error: %s\n", 4 M2 n- K$ K! q1 @$ h0 g6 q( t$ S
grapherrormsg(errorcode));
8 q" j% w+ h% W. kprintf(" ress any key to halt:");
) I: G6 Z4 J" x$ e8 P7 ~getch(); $ F. }" J1 z3 Z w; u4 M, x$ e
exit(1); ' ~" E0 I* K5 X( o5 r- }4 k5 \$ w
} </FONT></P>2 ]3 E& ^8 a) G$ g" F/ p9 V! ^
< ><FONT color=#0000ff>setcolor(getmaxcolor());
# P% |8 u0 b, U6 H3 _7 f* kxmax = getmaxx();
' R6 ]5 ?' ]+ `; i2 Vymax = getmaxy(); </FONT></P>3 w- B6 Q: w4 A! [ U
< ><FONT color=#0000ff>/* draw a diagonal line */ 6 W% u& m% E+ ]2 R L1 T& X+ ?
line(0, 0, xmax, ymax); </FONT></P>2 k+ ?( \8 a. e+ d) D/ x/ F/ o. b
< ><FONT color=#0000ff>/* clean up */ 2 a9 k; ]9 } @0 Z2 M3 q9 Q
getch(); ' m+ t7 l, E5 Q7 {5 W
closegraph();
( F5 f$ _" G/ I/ I6 v7 N! ureturn 0;
* B1 H p9 E* S! n9 \' S}
. r9 n% m( ?! k1 w' I1 ~</FONT>; L: `5 b; G3 z
</P>
2 X J. y* \6 Z& R0 h<P><FONT color=#ff0000>函数名: linerel </FONT>4 u3 q- Q: Z2 n- X
功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
' c9 J8 L) S: j用 法: void far linerel(int dx, int dy);
/ @( I- t( x1 I0 O7 ?9 M; d7 O! n8 O程序例: </P>
8 X5 O5 P8 `5 L; h& q8 S7 w<P><FONT color=#0000ff>#include <GRAPHICS.H>' p5 e, V) n1 C$ N2 F4 H( P$ Z& L
#include <STDLIB.H>
b, _$ a2 G4 `+ z& H! B9 [; w#include <STDIO.H>
, H) s2 f. q* T#include <CONIO.H></FONT></P>
) y- B# y8 f& Y<P><FONT color=#0000ff>int main(void) ! n, ~ [2 @1 W) A# G, J' w
{
1 I: V5 p, s( q9 x) E/* request auto detection */ ! e# O* i- j' H, e
int gdriver = DETECT, gmode, errorcode; 9 ^. f9 U o/ j$ m9 f
char msg[80]; </FONT></P>! e. N- E9 ?% u" `; m
<P><FONT color=#0000ff>/* initialize graphics and local variables */
! i3 ^1 D3 u' J" \* L" `initgraph(&gdriver, &gmode, ""); </FONT></P>1 r5 [, D, K v M1 {
<P><FONT color=#0000ff>/* read result of initialization */
$ ^. G. x! x, ?8 v) b5 Q* uerrorcode = graphresult(); 6 k! ~) Q) g1 r ?2 x0 U
if (errorcode != grOk) 9 [! X& t9 e9 n0 Q
{ ' s+ D/ I) _! v1 A ^
printf("Graphics error: %s\n",
) y9 X9 B5 b1 D6 fgrapherrormsg(errorcode)); ; x$ g# I" X' w! J% G% Y: F
printf("Press any key to halt:");
+ Y3 k9 s3 G6 Q1 o) `0 vgetch(); $ C& y5 E) a5 v) {. V. c
exit(1);
4 l/ a( o g* ]1 R" E: i I7 L/ N} </FONT></P>: O% e3 _6 A0 f. W- `0 X
<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
4 L, u3 }( V$ O0 r! Z' p( f2 d+ @moveto(20, 30); </FONT></P>3 r: r; O. S3 H3 E1 @
<P><FONT color=#0000ff>/* create and output a 9 B& [" e' [ E' e/ W( G1 s
message at (20, 30) */ 1 g ]1 ^. }+ i* D* V
sprintf(msg, " (%d, %d)", getx(), gety()); 8 a9 l& ?2 S' ?8 P
outtextxy(20, 30, msg); </FONT></P>
* K* O. L- j0 V) Y3 {, _) |<P><FONT color=#0000ff>/* draw a line to a point a relative 8 C9 G" R0 F t; S7 p$ }8 t; s
distance away from the current
0 _! l$ }+ \6 dvalue of C.P. */ 4 d7 l6 b3 d I
linerel(100, 100); </FONT></P>3 y' n) ~1 x+ }; c9 o$ i }4 \
<P><FONT color=#0000ff>/* create and output a message at C.P. */ % T3 Y$ E: S8 F! H* x
sprintf(msg, " (%d, %d)", getx(), gety());
( S+ Y+ z3 h N# [" Xouttext(msg); </FONT></P>
0 _: X7 N ?+ ]! K$ P7 c" x$ v<P><FONT color=#0000ff>/* clean up */
J: |% T* a; v. L) m9 Vgetch();
2 a" j* E8 o0 F( [- oclosegraph();
- D: y6 q% g+ R; S4 [/ Yreturn 0;
9 E8 r' k, {$ h, h9 z. M2 j4 q} </FONT>
' S. }7 ^: `) Y3 c- n</P>
, U9 m" I/ r. J9 n<P><FONT color=#ff0000>函数名: localtime</FONT> : ?, p# j A( M5 }# }
功 能: 把日期和时间转变为结构 / g- ~, k' H* {
用 法: struct tm *localtime(long *clock); ( h+ Y: r4 v3 d K+ u6 \
程序例: </P>- v1 p$ B1 t( C9 F
<P><FONT color=#0000ff>#include <TIME.H>3 V+ z, o) r: H8 {, O: D
#include <STDIO.H>
a5 a1 { B. h2 J#include <DOS.H></FONT></P>
# I, q% R9 R% r) s6 J: k- D<P><FONT color=#0000ff>int main(void) ) ?7 a& f5 f& f
{
' Z! z. y0 D5 Gtime_t timer; 3 [4 c; s5 p: H, @- @! X) f! W
struct tm *tblock; </FONT></P>( ~& o) e7 u0 v* V; |' p0 _
<P><FONT color=#0000ff>/* gets time of day */ ! y- ]& z. ^7 S% T9 D2 q# O+ a2 o
timer = time(NULL); </FONT></P>
/ O5 B- q9 {" u<P><FONT color=#0000ff>/* converts date/time to a structure */ $ ^; L: A1 C: \. p6 m
tblock = localtime(&timer); </FONT></P>
2 W }, k" P# h) ~) g* g9 W% W( P<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>0 z& _ F% m; e F E& v7 h5 B+ o
<P><FONT color=#0000ff>return 0;
9 o$ g0 ~+ \! ^}
9 m1 r) g& l* e0 I2 {8 d9 q
& g. D. w& Q7 a* N! w+ t+ u$ `. O, S3 g2 ?7 E
</FONT></P>
6 `" N9 o" ?7 l. J- O1 u; l; P# ]<P><FONT color=#ff0000>函数名: lock </FONT>
( {1 \4 v7 ~ W5 t) m功 能: 设置文件共享锁 7 Z' A9 N) f _8 w
用 法: int lock(int handle, long offset, long length); # w- j T; \0 }
程序例: </P>- o4 z* H3 b* D6 T0 D" o: K
<P><FONT color=#0000ff>#include <IO.H>& }2 z1 ]3 D; F- [& P1 F
#include <FCNTL.H>
0 L' i: t- a! B/ H0 j#include <SYS\STAT.H># y: G: V# ^9 b
#include <PROCESS.H>4 _; f) I3 z1 q) p
#include <SHARE.H>
1 g; d) [+ f+ D1 F! J% d$ p#include <STDIO.H></FONT></P>* x7 q6 n: W; M3 p q' R
<P><FONT color=#0000ff>int main(void) * z2 U9 d* j% B2 `: U, N7 A7 \* s( B
{ ' T: H9 l0 ?8 a; F) \
int handle, status;
: j$ x, s8 K2 U% blong length; </FONT></P>$ J' D5 b! S5 I: B l* J
<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */
7 w. U/ ^ f* j; Q6 b+ V% H/* file locking to function properly */ </FONT></P>* d* n3 Q7 U8 b% c8 x; {' A( a
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",
. ]9 V% |& ~. P7 l- d1 @# vO_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>
4 H0 ^, S% ]4 Y& _+ R4 q( ?8 L u* C<P><FONT color=#0000ff>if (handle < 0)
- X. e% \4 v& Z7 {{
/ o# F; t0 X, t5 Cprintf("sopen failed\n"); " [6 ~' g J, W. C7 k9 N- ?3 E! U( v, T
exit(1);
" O2 p7 U9 f8 X& c} </FONT></P>
2 u; _7 y; P0 M$ @5 s; C( o) O<P><FONT color=#0000ff>length = filelength(handle); $ `: Z N% h8 e( q8 h
status = lock(handle,0L,length/2); </FONT></P>( [* {7 i/ Q5 C, D$ k* a* _- X3 |
<P><FONT color=#0000ff>if (status == 0)
* o7 s7 M& E+ i. k$ K# Q( _) }7 Z! zprintf("lock succeeded\n");
+ G5 k. J+ N' p! Z) ?7 g$ nelse
1 g% S# M' G, }8 u/ \/ ]2 l8 ~printf("lock failed\n"); </FONT></P>- ?* [* \2 G- O- c1 n, _( q
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>2 S% p5 O0 p4 n" Y' r
<P><FONT color=#0000ff>if (status == 0)
' h& c8 j# x; Sprintf("unlock succeeded\n");
% _; Q: \) z x3 }/ Y+ Lelse
" H/ K" R, @* e5 Z x4 Qprintf("unlock failed\n"); </FONT></P>2 R2 {6 ~# A( P
<P><FONT color=#0000ff>close(handle);
3 U g" h* G# z7 Oreturn 0;
1 m, n, J# G( b}
" i. g0 J, b( s1 ]</FONT>
# O! S) r$ ~8 h' R4 S</P>9 M% x7 p' Y v
<P><FONT color=#ff0000>函数名: log </FONT>9 d/ W3 Z! _3 u% M# |& ~
功 能: 对数函数ln(x)
1 `% I1 Z7 w4 z& J+ S( ] E5 y用 法: double log(double x);
- O' s% m5 d- L w- J程序例: </P>
7 i9 d2 U0 g$ C<P><FONT color=#0000ff>#include <MATH.H>( v( T; y' F% d6 v) x
#include <STDIO.H></FONT></P>, I1 S" Z1 ^2 V* R
<P><FONT color=#0000ff>int main(void)
8 z+ ^ z7 k7 R{ ' I# R3 @$ Q2 h
double result; 1 Y+ r" { T9 F/ I* j9 n# I: O! t
double x = 8.6872; </FONT></P>
* \: }, F/ {9 D' e! g" c* `<P><FONT color=#0000ff>result = log(x); . y5 J* r6 f5 Z3 e# I, d4 x. b
printf("The natural log of %lf is %lf\n", x, result); </FONT></P>, A" Q' n! ]: z& \0 j A3 `9 Z
<P><FONT color=#0000ff>return 0;
% M/ g* h* O% m6 H2 u. w+ x} 6 y! z- l% y& o& n3 j5 e
! Z: x+ e3 K+ u' b; r$ y6 e</FONT></P>
. ?! s/ M- H. Y<P><FONT color=#ff0000>函数名: log10 </FONT> N- y% M8 I6 W7 T3 x" n
功 能: 对数函数log
% U+ U8 e/ i! v$ t8 R2 W用 法: double log10(double x); 3 j' r3 M' p3 x+ D t
程序例: </P>! P& ^( ~/ @3 M3 s+ R z& |
<P><FONT color=#0000ff>#include <MATH.H>, z$ c0 g2 M/ K# J& P3 K& j; g
#include <STDIO.H></FONT></P>
- s+ d8 d! I. ]$ d% r<P><FONT color=#0000ff>int main(void) ! Z( i# e3 q. {* D. S
{
$ a) l; O! _. fdouble result;
7 c& a9 V; {0 F+ g" z3 n5 zdouble x = 800.6872; </FONT></P>8 a, u% H& a# s3 ]. o9 |% Q
<P><FONT color=#0000ff>result = log10(x);
, v/ ^" |8 L- u% f: wprintf("The common log of %lf is %lf\n", x, result); </FONT></P>0 i+ a; {& i( Y: t) _8 {
<P><FONT color=#0000ff>return 0;
! f G: b0 s+ W2 u} - R6 {; p0 @( t& [% b! L; X& B
7 R+ U1 ?& q- J7 `6 e" G7 p8 [</FONT>
" |6 ^, N) m% A</P>2 R6 |5 g7 Q# W* Z. K
<P><FONT color=#ff0000>函数名: longjump </FONT>7 E3 d s7 G1 W) z9 Z) J; W
功 能: 执行非局部转移
# m. n3 P% e s M7 @% U. H" D, s用 法: void longjump(jmp_buf env, int val); , m) e. p7 v. r1 v% D
程序例: </P># a8 k) H" l$ Y6 O" a
<P><FONT color=#0000ff>#include <STDIO.H>0 u% W9 x/ h* C6 V3 w# f
#include <SETJMP.H>
, I$ T' Y+ s9 B7 Y" V( F#include <STDLIB.H></FONT></P>
( e: L& x ]( ~; m4 v# Q<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P>
) Z7 v% E" M, f6 e: ~7 D% P+ o% v( i<P><FONT color=#0000ff>int main(void) ) `3 [4 H' M7 k. v3 ^* B3 [- n3 [
{ </FONT></P>/ _0 Y9 Z, ?# f: f5 P: a* i
<P><FONT color=#0000ff>int value;
* ]# r4 k5 ?+ [. O5 F9 P2 ^jmp_buf jumper; </FONT></P>
* `. h+ o' [$ [& ^; z<P><FONT color=#0000ff>value = setjmp(jumper); : J2 O) Y& O4 U+ G- c
if (value != 0) ) [7 l) D$ L% E" H/ u/ K/ c
{ ( d% b+ O* g" j L
printf("Longjmp with value %d\n", value);
4 g& z8 k$ a' M/ Gexit(value); & l3 @7 C4 U/ N
} 2 m" o) D: _9 V
printf("About to call subroutine ... \n"); * i) k) ^- J9 ~
subroutine(jumper); </FONT></P>
2 X0 J& g7 c% z$ h( D0 \) G<P><FONT color=#0000ff>return 0;
+ I J3 \$ v1 B/ K! y} </FONT></P>
( w7 `# x. f, [<P><FONT color=#0000ff>void subroutine(jmp_buf jumper) 0 {5 z7 X2 V6 H4 J
{
. t$ b7 w9 G# B* |- G5 glongjmp(jumper,1); 6 `9 ]* x- _5 ^$ P$ t
}
$ ^0 W7 s6 K0 H" ~) S& O, z3 a0 t$ f: k Q! c$ e
</FONT>: [6 f' w8 X7 g- b1 H& x
</P>4 x; o0 J0 ]7 d" i8 F. ?# Q& u
<P><FONT color=#ff0000>函数名: lowvideo</FONT>
# x* h4 M( j" n8 r8 v) t8 c功 能: 选择低亮度字符 ' L: k' g5 j4 G- n1 w# L: \7 ]
用 法: void lowvideo(void); 0 q, R9 E2 l# e+ i$ C A1 D* b
程序例: </P>2 M, E- U$ m- q* p% Z
<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>
& K: Y% U j6 g- U( V# ?! ~$ x* [<P><FONT color=#0000ff>int main(void) 3 d9 w% s, T, E: t {: C) j
{
* Z A. e6 V. f* [clrscr(); </FONT></P>
- H l5 H) z% n<P><FONT color=#0000ff>highvideo(); 5 h# q2 d, L/ W" T
cprintf("High Intesity Text\r\n");
) J3 ^0 Y# [# V* v3 {: x) |0 o; _0 Olowvideo();
( k1 E) g" ] r( f* b5 Z) Ngotoxy(1,2);
( L b7 }6 ?0 Y8 mcprintf("Low Intensity Text\r\n"); </FONT></P>
3 r6 [; K+ ]7 m% }<P><FONT color=#0000ff>return 0;
% j4 C! d6 V1 U7 h3 a7 a9 j}
( U( i Z1 x- P. o8 c: W7 O) T& k/ l
</FONT>% H' H% n" j; Y T8 b9 d
</P>
$ j8 _: B9 N- R" ], A9 x! l4 s! y<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>1 v9 u" t6 h( c" C0 I7 v6 p& }5 `
功 能: 将无符号长整型数向左循环移位 , l* |, B [' X- p
用 法: unsigned long lrotl(unsigned long lvalue, int count); X0 w3 O& j3 j
unsigned long _lrotl(unsigned long lvalue, int count); ' N( n* D- \0 P* f3 `
程序例: </P>
+ `7 D( p# |0 \+ M<P><FONT color=#0000ff>/* lrotl example */ / W" \" d% T2 H" Z+ A
#include <STDLIB.H>
8 ?! a x& F% |) _% e$ ^: G#include <STDIO.H></FONT></P>
6 X7 e% V4 ~4 v4 j# v$ p<P><FONT color=#0000ff>int main(void)
0 e* m( { S* u7 b! |1 \4 n) x{
6 }- B4 Y! z# ?' {0 P# g# @unsigned long result; 1 C( A& A+ }1 a
unsigned long value = 100; </FONT></P>
% D, J# F& a7 W! @8 z<P><FONT color=#0000ff>result = _lrotl(value,1); 4 x1 w) X( k& C) w/ q2 D& X
printf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>
7 T6 E+ H# @# Q4 K<P><FONT color=#0000ff>return 0; 0 e8 L- B- e" Z! h' B- I9 a6 S
} % b- A& V0 N7 g7 G& L% k; [3 k
</FONT>$ Y/ o N1 H: p6 K) F! o
</P>
% S5 N) p% `' C! l& @. \<P><FONT color=#ff0000>函数名: lsearch </FONT>, f2 x4 l6 K! l
功 能: 线性搜索
* j! R, b# p+ D% B$ k7 M用 法: void *lsearch(const void *key, void *base, size_t *nelem,
+ i* `- h# J+ U! ^/ m5 V; Esize_t width, int (*fcmp)(const void *, const void *));
& T% R& M: X+ n4 R1 k/ y/ E+ d0 s程序例: </P>( M: k- x b- M5 s7 d
<P><FONT color=#0000ff>#include <STDIO.H>3 ^3 `2 L6 w( F) V% y3 g5 ]" r9 Q
#include <STDLIB.H></FONT></P>
+ Y+ ^ e6 \$ j6 d$ _<P><FONT color=#0000ff>int compare(int *x, int *y) 8 b4 L0 o( S5 T$ }: q2 g5 t$ Q
{
* B% h& I: V) i( Jreturn( *x - *y );
* L* Q8 z, R2 r6 G} </FONT></P>
) L/ \ C, \& \" s6 Q; ~$ }<P><FONT color=#0000ff>int main(void)
5 ^# p! v2 C; h) k7 V9 {0 A{
" Q9 [! C6 h1 T8 f1 ?: D2 n" ~int array[5] = {35, 87, 46, 99, 12}; * m, X m3 F/ g' p3 o! [
size_t nelem = 5; 9 \: {( _: Q/ r% k: z* [; \1 t
int key;
9 H# `9 _' {+ jint *result; </FONT></P>6 p2 y: f3 W8 ^0 W* X
<P><FONT color=#0000ff>key = 99; 7 j$ L' u3 b- w# O5 t
result = lfind(&key, array, &nelem,
9 D* S6 V; P5 d6 w" U# Xsizeof(int), (int(*)(const void *,const void *))compare);
+ F% F3 v# F- V0 m$ Wif (result)
/ g/ j3 F# [+ Pprintf("Number %d found\n",key); 9 i% m3 i- I! A% s' e% R% A
else
) d0 P O6 M; v4 X: h- R0 gprintf("Number %d not found\n",key); </FONT></P>
# |" r* S" M. ?' Q8 L1 E# ^& j<P><FONT color=#0000ff>return 0;
. r' o4 F9 F' }+ s: J}
6 f0 g1 M9 Y& G; y( H# Q; x
4 a/ r3 i" W. E. j# M5 o</FONT>
4 |/ ^$ [) Q; j* Y/ L4 v7 y</P>
4 w, I9 Q. z" G' e5 M' l<P><FONT color=#ff0000>函数名: lseek </FONT>& M" }* N3 Z6 W/ e% i% y
功 能: 移动文件读/写指针 0 @7 {, y# w' ]) q6 u
用 法: long lseek(int handle, long offset, int fromwhere); 2 E+ c4 s5 F; ]6 W" W
程序例: </P>% R5 K$ G6 k$ c
<P><FONT color=#0000ff>#include <SYS\STAT.H>
2 l4 W( ^2 A( F P) A#include <STRING.H>% V$ w; ]+ U( z& X) K) Z
#include <STDIO.H>
8 _4 C" m6 {8 [2 D+ n1 L#include <FCNTL.H>
7 t" x9 `& @5 r; a#include <IO.H></FONT></P># j) |9 o0 O) l$ q1 T& ~3 X( c
<P><FONT color=#0000ff>int main(void)
0 W4 n- d5 Q- n2 p, q{ ' A9 _7 C6 E3 i9 y- `' G: B
int handle;
) N6 o- ?4 n7 v* f8 @* gchar msg[] = "This is a test";
7 m; b) S+ S% G# j" Dchar ch; </FONT></P>
& {1 s# q7 U/ ]# D<P><FONT color=#0000ff>/* create a file */ 5 ^( i2 L$ H) ]% O" H! X
handle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>- p' C9 i4 {" s3 k4 R2 A9 _) z
<P><FONT color=#0000ff>/* write some data to the file */
* f5 v9 ~; {4 j! @write(handle, msg, strlen(msg)); </FONT></P>
$ Z. h) u; _4 l$ k" X<P><FONT color=#0000ff>/* seek to the begining of the file */ # k2 X' E( V: b0 D: O5 O, X
lseek(handle, 0L, SEEK_SET); </FONT></P>+ g* f r* B( `& B' G8 j
<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */
G# N5 n* a7 M$ tdo
) [$ K3 H* p( \. }" L7 x{ 2 b1 |- P0 U5 Z( N9 Z4 j7 f
read(handle, &ch, 1); - ^9 T! _* @. N5 Q( `% b
printf("%c", ch); ) }, q& H! g7 b
} while (!eof(handle)); </FONT></P>0 `+ f: y5 i+ L: I/ u+ p3 F# O& e/ Q
<P><FONT color=#0000ff>close(handle); ; X6 t" K! T# E
return 0; 3 x1 Y2 c9 x: n7 q+ P
} ; L0 }9 P3 n, ?- ] Y+ n* z
</FONT></P>" V! ]9 |. L) N( U
<P align=left><FONT color=#0000ff></FONT> </P> |
zan
|