QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1748|回复: 0
打印 上一主题 下一主题

函数大全(u开头)

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT>
3 r0 V" p$ [- l2 z0 _) r功 能: 转换一个无符号长整型数为字符串
) C; _) W1 u& t3 S2 g% t) G用 法: char *ultoa(unsigned long value, char *string, int radix);
$ G/ t2 F2 l. K2 [+ U程序例: </P>
( f% M  y) a7 ?/ J/ E# O* x! Z<><FONT color=#0000ff>#include <STDLIB.H>9 z+ J% G6 N5 x$ K6 @3 S
#include <STDIO.H></FONT></P>5 H$ ^" H) A! p, z
<><FONT color=#0000ff>int main( void )
6 ?6 A2 f% M: {# ~4 t/ B% @1 |{
9 A$ P" X& c; K! A, a% u9 k7 k6 Gunsigned long lnumber = 3123456789L;
5 y7 `9 n4 m& R7 M' v1 D2 P  Wchar string[25]; </FONT></P>. H& B0 r; u/ W  Y1 W  F
<><FONT color=#0000ff>ultoa(lnumber,string,10); 4 p9 X5 X) ]( @9 b3 S, V
printf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P># b5 n9 ^  [: @* r
<><FONT color=#0000ff>return 0; 5 N9 B9 _+ j. _- r& x* C0 S3 ?, i6 u
}   W2 _2 q- @8 a9 O. S  F
</FONT>+ }3 G8 c5 J$ y/ f
. S8 _  d! z! `5 p6 s  H
</P>0 |0 a7 W, h4 T. b- e) v( I7 C
<><FONT color=#ff0000>函数名: ungetc </FONT>0 g  W8 Z/ o2 e9 b/ A/ T: I
功 能: 把一个字符退回到输入流中 ! m9 F  [5 b3 V0 k; l
用 法: int ungetc(char c, FILE *stream); 9 n; G* R, _7 e+ C2 N
程序例: </P>0 C( m6 t) M" w) z7 l' s
<><FONT color=#0000ff>#include <STDIO.H>
' F9 y# @- i" B  |7 }#include <CTYPE.H></FONT></P>. m% }% g$ F; _0 N- Q
<><FONT color=#0000ff>int main( void )
0 k. D( |; A% X0 x7 P9 u7 s{
0 a# D1 o( u' zint i=0; 9 N. V/ f5 p0 m4 c
char ch; </FONT></P>8 s& L, ^6 }5 G3 Z! ~
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
7 Q6 R, Z  V& V6 U: f<><FONT color=#0000ff>/* read chars until non digit or EOF */
: U* v5 k7 g  M. m! S% P$ O. mwhile((ch = getchar()) != EOF &amp;&amp; isdigit(ch))
, R* C3 \3 _+ s' s1 O+ si = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
/ P6 w  K+ @& P7 r% r, K9 c<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
2 Y# p- N$ D' p" @* |9 }0 Kif (ch != EOF)
) D+ o# _, x" [: Yungetc(ch, stdin); </FONT></P>
: Z  f' ]1 Q; [+ u6 M0 ^" B1 U<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar());
6 I0 U) l6 c) e9 M. Treturn 0;
! T+ N6 Q0 t' N" L4 S, z: T} </FONT>
) t# V' p& {2 x- f, @
7 v# M2 y+ L# B2 u5 M8 n0 N$ N* x
4 G" _" j# Q9 ~* d</P>% k- `1 i( ]# ?4 }; ]+ i
<><FONT color=#ff0000>函数名: ungetch </FONT>
+ {. D1 H- n- @) t功 能: 把一个字符退回到键盘缓冲区中 ) L. W+ }# p6 T/ X! d$ m, Z
用 法: int ungetch(int c); 4 W  q% s9 I' Z# q+ b
程序例: </P>
, Q% w; p# d% t4 s0 l<><FONT color=#0000ff>#include <STDIO.H>) }7 E+ y& S; z+ J" n4 e
#include <CTYPE.H>
( a0 I+ I5 H$ S#include <CONIO.H></FONT></P># R; [# j* w- _' J5 K: Y: n
<><FONT color=#0000ff>int main( void )
4 V8 ^3 c" e7 J, c; d$ q{ 5 S8 a+ `* f2 X8 r4 d
int i=0;
) H$ F+ v& v/ [0 Q2 n1 p2 G8 vchar ch; </FONT></P>
. a: o* _/ |: v<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
( v. l6 r! e/ U0 g, P3 a5 ?6 q& ?4 U<><FONT color=#0000ff>/* read chars until non digit or EOF */
) v: Z# f7 g" a# D2 iwhile((ch = getche()) != EOF &amp;&amp; isdigit(ch)) 9 w. y* b5 D0 D* V, W
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>9 Z& X0 v( B1 x2 V
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
0 m$ e3 w& K  i/ Z" ^1 Aif (ch != EOF)
* x; [& p6 j! t, ~$ bungetch(ch); </FONT></P>
+ _  M( i% M/ G, J<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
; k; T" Z% P. {' a: t! k- Hreturn 0; , |1 x0 u9 P% v! J3 ?& n& s
} " L7 o2 W1 S) }  A+ j6 o% e

: \. K' n; m% \; ~( v! [
. m0 D% N& s2 b; H) v  z6 }' v</FONT></P>9 d4 C* c* r. F9 _
<><FONT color=#ff0000>函数名: unixtodos </FONT>' f% j! G& K& L
功 能: 把日期和时间转换成DOS格式 9 ^2 q% e" Z, ~9 M; y9 [. Q
用 法: void unixtodos(long utime, struct date *dateptr,
, f* L6 S" a7 v, Bstruct time *timeptr);
; X  G. X) m" k- _0 M; R% a! U程序例: </P>
- R' p: S2 H- e) z( S<><FONT color=#0000ff>#include <STDIO.H>
) D* P6 z. K+ z$ R4 `1 y$ c: M#include <DOS.H></FONT></P>
; E, q3 M5 d+ M. k5 r6 O$ x0 L<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
$ L) c# q& h" Y( S1 [. h2 `"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>
! K& ]. q6 T: n0 Q0 d<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>6 \* M7 |( w( X3 \  D
<><FONT color=#0000ff>struct date dt;
2 e5 w, j7 P5 _& m" b) C& ~/ Estruct time tm; </FONT></P>. [4 V" E2 Y: b: \' I
<><FONT color=#0000ff>int main(void) 0 o' r. W5 K- l& E8 f
{
% [5 I, R6 z, e) {unsigned long val; </FONT></P>
3 Q# T. k1 z) |+ V* I0 H) n<><FONT color=#0000ff>/* get today's date and time */ ' {' B/ D& }- m9 W8 J
getdate(&amp;dt); ( B$ o9 B! c7 H' W2 v
gettime(&amp;tm); ' l5 H, w, a! N8 E
printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>
6 G* A8 E3 T6 C& T<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */
2 H" n, l  g! _, o/ gval = dostounix(&amp;dt, &amp;tm); $ K) @9 C, ?  r7 L/ Y0 t+ ?
/* subtract 42 days worth of seconds */
# d3 x9 c6 u7 W3 T  @val -= (SECONDS_PER_DAY * 42); </FONT></P>
; R# z0 |7 e7 S3 w6 y& W! l<><FONT color=#0000ff>/* convert back to dos time and date */
, W7 ?, X$ D( B; |& }. S; w, Yunixtodos(val, &amp;dt, &amp;tm);
9 }) Z; v- L* e2 M! U4 k- kprintf("42 days ago it was %d %s %d\n",
+ g0 y- y5 }; f- {  |dt.da_day, month[dt.da_mon], dt.da_year);
4 I/ X5 d) W; B1 X2 f0 ?9 H+ i2 Lreturn 0; : ^% z' X1 `5 V9 R( F* g
} - d( S  a9 J( G" I6 C# y

  H  }$ G; Z+ J/ f2 a
4 V) b+ Y' L& m7 H</FONT></P>  f! C  Q* H# |- d$ J6 X) y' y
<><FONT color=#ff0000>函数名: unlink </FONT>
# Y' x: B3 C& D/ e0 Z功 能: 删掉一个文件
) e8 \0 z8 W1 G' c用 法: int unlink(char *filename);
1 C" w8 W+ S* k/ a3 q1 }! H程序例: </P>
' J: M% L) ]8 Y<><FONT color=#0000ff>#include <STDIO.H>8 T" }7 f' a/ }. L7 w3 z" X/ m' X6 J
#include <IO.H></FONT></P>
) m) p& y% A0 {, \! G! O<P><FONT color=#0000ff>int main(void)
) r* D6 W/ g$ S: r3 y{ & n" @/ V, V8 p9 \/ R5 E
FILE *fp = fopen("junk.jnk","w");
. z  q3 a8 R# q0 e! Dint status; </FONT></P>9 w7 P& c9 i5 h, _
<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>2 e2 V* B- X/ T: c3 T8 E! @+ J' ^2 @
<P><FONT color=#0000ff>status = access("junk.jnk",0); 8 }3 N/ B; _7 P4 `' \" O( ?  M
if (status == 0) % X% |% Z/ t( t3 }; t
printf("File exists\n"); : z) w; W% g* y
else 6 ^. `* G: i) P7 Y1 `
printf("File doesn't exist\n"); </FONT></P>- Y- n9 C/ ~6 L1 ]4 _. r
<P><FONT color=#0000ff>fclose(fp);
. D- h! u4 a& h* W. K0 ]unlink("junk.jnk");
+ s1 {& M+ P! Gstatus = access("junk.jnk",0); ) ~$ T4 J7 O4 ]" ?
if (status == 0)
6 P8 ^% l) y8 G! W* \printf("File exists\n"); # D, B1 z' B/ R6 R) g
else
) V2 |- Q" O. ^+ @- D/ Wprintf("File doesn't exist\n");
0 r. Y$ b9 N5 z% C</FONT></P>
! E8 l1 }9 W  H# K9 J4 @2 c<P><FONT color=#0000ff>return 0;   m( G5 s0 o6 Z1 O( T  t
} 9 _8 o! x! }+ ^# C8 V1 C" G8 Y

6 m' G8 z; ~9 z- C5 ^7 ^* H! w</FONT>
2 b7 p+ j2 V% s( W' T</P># v0 M  g* y' x0 H0 C# [" L' C
<P><FONT color=#0000ff>函数名: unlock </FONT>
& {" D. F- T" g功 能: 解除文件共享锁
' L. R4 k* o5 S% ?$ g  r2 Z" `9 T& Z用 法: int unlock(int handle, long offset, long length);
! v/ A/ O' ?+ F# o- o3 ?程序例: </P>
/ Z0 ~' V% m6 ?<P><FONT color=#0000ff>#include <IO.H>: X9 v0 B1 L7 |; ^3 Z2 \$ ~
#include <FCNTL.H>5 E& ^/ N4 K4 j+ w# j, Q2 M
#include <SYS\STAT.H>
5 ^9 E  s5 o$ [: Y/ u0 o#include <PROCESS.H>
& P9 S) y$ b. }#include <SHARE.H>' f! \8 c& }7 m3 a
#include <STDIO.H></FONT></P>, X# b% @, ^* J1 ]# j
<P><FONT color=#0000ff>int main(void)
# g# Z4 b0 g* n/ \' U{
2 j0 F$ O$ i6 A- A& ~: Wint handle, status;
& L$ A) `5 R7 k: J  S" Q! D. l5 c/ olong length; </FONT></P>. D& U+ s2 A; w6 ^3 d, ~
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>
& w5 P3 c. q+ D) \7 U( g! |<P><FONT color=#0000ff>if (handle &lt; 0) , A6 d1 S' E1 T7 M7 C
{ + ^( H( n/ [; x; S6 y+ p$ d8 Q( `
printf("sopen failed\n"); 8 U2 z0 l6 T% T! B' i2 ~
exit(1);
1 P$ t* m# |6 @+ B# k+ M+ Q} </FONT></P>
$ @, |& A) E  s9 w7 }<P><FONT color=#0000ff>length = filelength(handle); ( q2 g& v- }* w; p0 q# Z+ y
status = lock(handle,0L,length/2); </FONT></P>' N. P3 U3 Y* r. B  w2 z7 C
<P><FONT color=#0000ff>if (status == 0)
& l, G6 D- R4 ]5 s( Bprintf("lock succeeded\n");
5 |$ p, e0 P( X& Xelse
8 H- _" Y& z, }/ Y: bprintf("lock failed\n"); </FONT></P>
" i0 m6 R5 b. P, @, T- C! U<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>5 K: ~2 X/ I+ @) |% }( C
<P><FONT color=#0000ff>if (status == 0) 6 _) C6 @  `; p7 O
printf("unlock succeeded\n"); , |% Q8 F7 z! C% E$ t5 L8 ?3 i9 M3 D- q
else   V. d! f4 U' G- u* L% P! i
printf("unlock failed\n"); </FONT></P>
2 y) V; V* I8 R* U, M3 A. q7 W<P><FONT color=#0000ff>close(handle); 9 J6 X  G/ X3 d4 B2 Z% Q  h& b
return 0; 1 H# w+ C6 E: P- ?9 ~5 y8 |
} </FONT></P>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-10-25 04:30 , Processed in 1.950979 second(s), 52 queries .

回顶部