QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |正序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT>/ P/ B7 d3 t* S6 t1 k$ o
功 能: 转换一个无符号长整型数为字符串
- N/ Q" [8 `) j2 U* m用 法: char *ultoa(unsigned long value, char *string, int radix);
/ |  r% h1 F  n& t, w- D! m2 |2 @程序例: </P>5 E/ C+ }; A6 \
<><FONT color=#0000ff>#include <STDLIB.H>
# n7 M1 \- `; V  X#include <STDIO.H></FONT></P>: w2 I* m# Y. Q- N  }
<><FONT color=#0000ff>int main( void )
7 A2 I+ b# b/ s5 q* l4 o{ ) h$ e6 |8 ?. E
unsigned long lnumber = 3123456789L;   C( A3 G( \% a+ @+ X
char string[25]; </FONT></P># p7 E3 b! C5 F4 ], j" m% ~" w0 V
<><FONT color=#0000ff>ultoa(lnumber,string,10);
! J  r" M9 L0 [9 \7 F! q( I, [* dprintf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>
( T: b1 ]9 v. D<><FONT color=#0000ff>return 0; ' p7 K- l' S- m# ]0 n& a
}
* s! ^2 A# U; l</FONT>* i7 G" X3 H# }* I0 Q5 c" G% J% o

" a: B' x( [% Q. x; H( n$ `3 k: X</P>; C  x: U2 W$ V
<><FONT color=#ff0000>函数名: ungetc </FONT># T( y! @1 S9 o
功 能: 把一个字符退回到输入流中
+ K0 R/ [, S$ b: q% i" x- j9 o' l3 }' f用 法: int ungetc(char c, FILE *stream);
1 n1 E" }' s$ l2 v/ t* G% h0 H" ?程序例: </P>* u3 q' A' u7 T- \( I) G. B
<><FONT color=#0000ff>#include <STDIO.H>
: p9 ~; V) e- L/ p#include <CTYPE.H></FONT></P>
* Q5 {- Z+ Y4 k. n) G<><FONT color=#0000ff>int main( void ) ( d* `* J' }0 L6 O
{ # F* Q5 _) ?% e! r# ^) y) A
int i=0;
5 Y  z! X8 h* g7 P) y2 e- ?char ch; </FONT></P>
+ q$ D$ z1 N, G0 H0 d8 o8 D0 E<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
' s5 G5 G/ \5 d<><FONT color=#0000ff>/* read chars until non digit or EOF */ 8 \6 s: c7 ]8 Q# i
while((ch = getchar()) != EOF &amp;&amp; isdigit(ch)) 0 z% c# L  l& K7 V. l- O7 @* E5 |
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>6 r; B7 m( ^3 K  Q! p( R3 m
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ * e: U% n% p6 U' }
if (ch != EOF) ; j7 x0 K% B( _6 C+ _
ungetc(ch, stdin); </FONT></P>8 [3 S3 R% a. ~4 C0 `
<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar()); 8 J6 _4 Z& X4 ~$ ^% s3 b
return 0;
/ p" O1 F+ J- E2 N+ V2 D} </FONT>
4 w" g" ]; ?, L+ j" I/ k. [) ]5 O2 x* p
5 P6 @9 b# j/ _: ^4 _1 m
</P>
1 }6 s. F- ^% j9 O7 R<><FONT color=#ff0000>函数名: ungetch </FONT>+ j$ k6 y1 e! o  Y/ w0 m
功 能: 把一个字符退回到键盘缓冲区中
( E6 Q2 ?2 |( k2 t7 N$ w( E用 法: int ungetch(int c); : B- _. \' G( J8 k2 Q
程序例: </P>
6 K/ [3 Z0 M8 K/ @3 L<><FONT color=#0000ff>#include <STDIO.H>" U) ^/ y2 G! b& J
#include <CTYPE.H>4 f( T# g3 X* _' Y- [! S1 O! z
#include <CONIO.H></FONT></P>
6 d: `; G6 E# x5 A<><FONT color=#0000ff>int main( void ) * r5 B% g, a/ |, Y
{
" H' k1 J% m+ x) r5 [int i=0;
+ {( R$ D" T' [& P# n+ xchar ch; </FONT></P>
5 I% l9 |5 k* B; I<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>* E2 f, v: q2 W
<><FONT color=#0000ff>/* read chars until non digit or EOF */   x$ K3 J0 q! S6 b+ a" P4 k6 k" Y
while((ch = getche()) != EOF &amp;&amp; isdigit(ch))
0 ^6 X9 L6 C/ [7 h; p" i4 u3 bi = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
% B6 w# p' e* A6 J- h  U* \<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ * V2 t- b  v: K& t
if (ch != EOF)
* V2 e# Q) n: c  R0 f! J5 a* Wungetch(ch); </FONT></P>
6 o  x' `# ~& h' z& A# K<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
2 i: d) ?% Y) L. Areturn 0; ! {) z# |5 f( H& y, {9 D6 {8 `
}
4 q3 Y2 L3 B3 f6 C* q4 c3 f' Q. I4 K
  X6 D! x) y0 E# y3 W( t/ o. u
</FONT></P>' \' q1 q+ m$ X& Z* ^* E( Y4 U
<><FONT color=#ff0000>函数名: unixtodos </FONT>6 E: a9 \" y9 W& E: Y
功 能: 把日期和时间转换成DOS格式
7 C: O- T0 V* {% ?0 M" f. t8 N用 法: void unixtodos(long utime, struct date *dateptr, - r" C- `0 F+ p" a* R# L' ~
struct time *timeptr); / r" M9 ]; V* W+ o1 ?1 ?
程序例: </P>' ]2 |  n+ g$ C, B$ \
<><FONT color=#0000ff>#include <STDIO.H>
8 ]; e- C. T6 W2 y#include <DOS.H></FONT></P>
' R8 V: b8 X6 w  _6 p& B( l+ _<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
9 W. v* M( o' Q8 I4 |" Q"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>
6 ]# N4 G# r. n<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>
* R) [! v' H- P2 m( l<><FONT color=#0000ff>struct date dt;
: r, o+ O; [- ?$ R4 C6 c, ?struct time tm; </FONT></P>
3 @" r: Q8 ~' M* v<><FONT color=#0000ff>int main(void) # ]9 r" Y) ]" Z
{ ' p! c0 K5 B9 x% r0 l1 Y
unsigned long val; </FONT></P>3 Y6 J1 k0 ?3 j" c- D0 q
<><FONT color=#0000ff>/* get today's date and time */
3 W4 n! A! o7 H- y- `getdate(&amp;dt);
  U  t7 k+ q4 w2 ~6 s, L. I2 y6 ygettime(&amp;tm);
/ {7 n  i* h: oprintf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>
) u- ^+ E* S% l, _. m4 w<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */ , ^  P0 N! L3 i2 H3 L1 s
val = dostounix(&amp;dt, &amp;tm);
; w: y8 n5 M8 U: N9 a8 V/* subtract 42 days worth of seconds */
# X: q% y6 o2 H+ ^2 y" ^val -= (SECONDS_PER_DAY * 42); </FONT></P>
9 P( T# [; e) f: C& x, Z. ^<><FONT color=#0000ff>/* convert back to dos time and date */
: r  \# H7 e; ?" @unixtodos(val, &amp;dt, &amp;tm); . C8 o; V- F% O3 z" k
printf("42 days ago it was %d %s %d\n",
2 y) ~3 z- r* J3 _9 W# q, m1 ydt.da_day, month[dt.da_mon], dt.da_year);
/ Y' _' s' y5 s# S8 A: V. B6 L2 [. lreturn 0; ' q4 `6 b1 j. D6 s+ ~; P
}
2 ]7 ?& S3 \  S2 a) v6 Y6 E% g
$ V" i! {! w6 T7 V: q% c7 `
& w7 e6 }" [, V6 g4 X" c5 w</FONT></P>
; ]. o$ ]. ]1 _2 e<><FONT color=#ff0000>函数名: unlink </FONT>
# q' s5 z& V3 E$ }功 能: 删掉一个文件
* [" x8 f. @6 J+ f( x1 n8 e用 法: int unlink(char *filename); $ w1 b* C2 c; x2 D& X
程序例: </P>8 s* K. i2 f: s! W* @
<><FONT color=#0000ff>#include <STDIO.H>
5 v3 Z' B* H' |: Q, t- B#include <IO.H></FONT></P>
# A8 b4 w1 z* q4 X2 \<P><FONT color=#0000ff>int main(void)
9 E3 x) c. N8 {5 @' ~{ , E/ i2 t, U, D, ~9 t* f
FILE *fp = fopen("junk.jnk","w");
+ `  p- w) X& sint status; </FONT></P>
4 S3 T/ G( p  ]3 v9 |2 A: w9 I8 W<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>" V0 z( k6 q1 l- F7 n* A
<P><FONT color=#0000ff>status = access("junk.jnk",0); * V9 m( b5 b* r* \
if (status == 0) 1 J/ ]5 a9 `3 d+ d
printf("File exists\n"); $ s3 v5 {7 b1 l1 t8 W; r5 T& V
else & |( @& B3 h0 Z$ g8 O* j/ R
printf("File doesn't exist\n"); </FONT></P>
7 a; K* Q# {$ g1 k<P><FONT color=#0000ff>fclose(fp); " A6 T% ]; V3 S: O( U1 a6 c
unlink("junk.jnk");
+ O/ G/ d1 `0 d+ w) A, Ystatus = access("junk.jnk",0);
! z9 b, W+ H4 M7 K. k9 ~- `1 zif (status == 0) ( o/ L. C- U* U
printf("File exists\n"); . ^6 v* f, I+ l% D- g) ?/ F2 Y
else
- v* L, g6 z2 @: Uprintf("File doesn't exist\n");
+ s4 y9 s0 }( f* M/ T</FONT></P>
. V9 x- M) e  o4 L! S* H<P><FONT color=#0000ff>return 0; " O9 B9 L; _, x5 I
}
3 x( w5 ~. R/ t: n- H3 I) X: m/ J+ y, ?7 s! _- P: z$ v
</FONT>
5 t6 \+ X/ k) n+ K</P>2 H+ u) H  M5 l( d
<P><FONT color=#0000ff>函数名: unlock </FONT>
, W! G- o% F2 ]5 E' l! [8 a  \功 能: 解除文件共享锁 ; B% x- A1 `' u3 n, k( i
用 法: int unlock(int handle, long offset, long length); 0 T1 s1 Y! _# c" l, q6 [8 N
程序例: </P>
( [5 f/ ^7 ]( f" \! p: c8 b3 M! }# J<P><FONT color=#0000ff>#include <IO.H>  z" B. z/ q9 M9 j2 Q
#include <FCNTL.H>
) P/ M+ V3 Y: z#include <SYS\STAT.H>
4 X$ s  L4 {$ }, ^4 H$ c. a7 B) W#include <PROCESS.H>
5 I+ W) S- z% P#include <SHARE.H>3 G3 n/ M  g/ j3 H
#include <STDIO.H></FONT></P>" r' p/ _+ q+ C. _& k+ B
<P><FONT color=#0000ff>int main(void)
  n/ ]- `! w; W9 o: t2 i{
7 S. y7 g9 e0 m6 vint handle, status;
3 w, u8 @/ y, n0 o2 ~% V2 llong length; </FONT></P>
4 l# I+ Z! r) }% |<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>' v. j3 D* @7 B# a
<P><FONT color=#0000ff>if (handle &lt; 0)
; g# v7 N6 V7 r. w! ^+ P, z$ d{ - [" A: ]8 z: O3 b; r
printf("sopen failed\n"); $ z( `' {# j& a' x
exit(1);
5 i% z. A# W4 p2 a: N: c} </FONT></P>
+ P# Z+ q. `, J9 C' ~. K<P><FONT color=#0000ff>length = filelength(handle); , k0 T3 ~5 t* h# r; N7 O* E+ p
status = lock(handle,0L,length/2); </FONT></P>
/ L9 `3 E4 l. A% k4 h<P><FONT color=#0000ff>if (status == 0)
8 K8 V) c4 N. f. D' eprintf("lock succeeded\n");   {3 }( E3 H; ]! \1 k) z) a2 M
else
" F9 j. }, k" Yprintf("lock failed\n"); </FONT></P>6 h" q5 |7 N  ~1 v. [
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>3 E! @8 o3 f# H2 H! E6 m, M, x
<P><FONT color=#0000ff>if (status == 0)
! Y' n* J* ]* |" X2 \printf("unlock succeeded\n"); * V5 y  L' Z* |6 U
else
7 I" }; R* C% q, ~1 H4 R3 |+ [" h. fprintf("unlock failed\n"); </FONT></P>
% p/ D! h0 n6 t8 Z+ M* M* x, }<P><FONT color=#0000ff>close(handle); 7 W; k, R4 R# |% x5 ?% ]
return 0; 5 o; o6 |' `  j6 g
} </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-6-12 04:05 , Processed in 0.423861 second(s), 52 queries .

回顶部