QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT>+ r5 m+ l+ |+ N/ N# E  Z+ T: {# @
功 能: 转换一个无符号长整型数为字符串
: R8 E8 q' p' ^4 N2 r, A& X用 法: char *ultoa(unsigned long value, char *string, int radix); ! l, \, S7 V) ]% G' n, _
程序例: </P>* d% K; w6 Z! _  k5 T1 h
<><FONT color=#0000ff>#include <STDLIB.H>
; y* n( G5 h# Z5 @#include <STDIO.H></FONT></P>
' }5 ?: D$ {# Y1 J3 B# Q<><FONT color=#0000ff>int main( void ) " o; K5 O& n2 V& Q- i% U( h. s
{
0 m3 |8 t  P, p1 M( G+ q- Z; l* i$ T* runsigned long lnumber = 3123456789L;
! y* O1 t, u  b5 ~9 ~6 `6 Qchar string[25]; </FONT></P>
6 C& {" d  J* ]4 @6 @<><FONT color=#0000ff>ultoa(lnumber,string,10); 8 L  I$ p/ N+ c, p1 L
printf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>
$ ~5 N% q7 w# i- R$ Q<><FONT color=#0000ff>return 0;
2 r9 q1 o0 ~# O8 }( T  T0 i4 [}
* s& w: R2 T2 o& v7 p</FONT>7 [" Q$ m+ z& s
; m+ t) V/ I' K4 k5 V
</P>
" |  w* |: R: @' L0 @" [+ J<><FONT color=#ff0000>函数名: ungetc </FONT>0 ]6 G0 N; }4 _8 s3 f
功 能: 把一个字符退回到输入流中 ! P" W# Z+ ]4 x" {2 Q! ]0 A
用 法: int ungetc(char c, FILE *stream); % q+ G6 t% ?( ]" d1 n8 A
程序例: </P>- h1 T; R9 t  X' ?, m/ p
<><FONT color=#0000ff>#include <STDIO.H>) l) W2 o% [3 u7 @
#include <CTYPE.H></FONT></P>5 o* ?8 H! o+ o/ n4 b) x1 v0 h
<><FONT color=#0000ff>int main( void ) $ a. u- p' Y/ Y; _- D+ _9 ?% p
{ # I) g; B! N; d; b
int i=0; % U# t* \" ]; i5 a: G
char ch; </FONT></P>* u# P2 k) S! z- y
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>6 S: I* y( o8 I8 r; \
<><FONT color=#0000ff>/* read chars until non digit or EOF */
$ U. S  W8 y% jwhile((ch = getchar()) != EOF &amp;&amp; isdigit(ch))
; z: |$ \: ^! v7 ei = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
$ r& E# L0 m. u* N! Z3 q  v+ u<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ 3 G9 j1 L6 n' g* K7 z% d0 k
if (ch != EOF)
* M, {" ^4 X/ h; K& y/ Hungetc(ch, stdin); </FONT></P>& S9 M0 @2 _. F
<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar()); 9 {3 `2 H; [( Q2 J- g7 y+ x' V) L9 b
return 0; / R7 ]' P. T0 g9 g- |  n
} </FONT>
( L1 z, H8 b0 ^& N+ d0 t, H& K* p; q
* x- j* R" ~* x2 m5 h' p+ P& d
7 G; ?3 I$ x( Y' [8 G0 h7 k</P>! J  q: k/ V5 ?0 d2 ^  p
<><FONT color=#ff0000>函数名: ungetch </FONT>
7 k& g5 F8 W1 w1 y功 能: 把一个字符退回到键盘缓冲区中 ! l! o) |/ y% e/ G/ B
用 法: int ungetch(int c);
" i/ b& u) @- A9 @! a- J8 {: ?程序例: </P>
& l1 Y; P' D7 x) z<><FONT color=#0000ff>#include <STDIO.H>( P3 Q% d6 f% L. J
#include <CTYPE.H>
# S7 y, }  `: F- v& e  [#include <CONIO.H></FONT></P>
3 q. Y6 P9 n$ z9 j7 P<><FONT color=#0000ff>int main( void )
0 o, ~6 J. N& G& m4 D{
. a& O4 C# ]3 T# eint i=0; " q4 y' Z+ O# P6 M
char ch; </FONT></P># ]5 o: e  W9 Y) }! I6 h
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
! ~; p/ f1 b0 h6 x<><FONT color=#0000ff>/* read chars until non digit or EOF */
3 d# B  t$ [9 O, j& q4 c5 Z7 owhile((ch = getche()) != EOF &amp;&amp; isdigit(ch)) 2 ~! B# X+ F# g: p; B( a# {
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>- V* @0 S# K5 q( C
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ ; d! v, F5 S6 M
if (ch != EOF)
, E8 U/ y1 f4 c) O. rungetch(ch); </FONT></P>3 n. N- K0 s* B% [% H1 [
<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
# z3 A+ @& v) ereturn 0;
+ @( `0 M# L( ^- |: b2 G}
$ l. c' x  Z: M1 o) i
5 e& L% J" P0 w) N2 M+ W* Z! q7 L4 c  b; M
</FONT></P>$ d4 {, r% _5 I. W
<><FONT color=#ff0000>函数名: unixtodos </FONT>8 x: v7 h% b1 e' A* q! x' @- p
功 能: 把日期和时间转换成DOS格式 + m6 x2 X; @; G6 {1 `, T' ]3 I: y
用 法: void unixtodos(long utime, struct date *dateptr,
8 j* Z# X" j$ q2 l* `3 I0 p' _struct time *timeptr);   O1 P! |1 l6 @9 W
程序例: </P>
1 C. n" U* t/ }" ?) W<><FONT color=#0000ff>#include <STDIO.H>
  F, P$ ?' j4 O4 f4 l#include <DOS.H></FONT></P>
7 H  O% @% k2 T) ^<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun", : l9 ^- x0 I. n- ]4 s4 ~
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>. L3 u1 Y' `% e2 X6 |. S, z
<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>
! f- O* Z6 ~1 x9 i<><FONT color=#0000ff>struct date dt; 4 S) t6 C$ h& `- C6 v- X1 m" j/ j, u, v
struct time tm; </FONT></P>4 T( I7 C7 H* y1 _+ H7 m
<><FONT color=#0000ff>int main(void)
& m. `+ i& H: r: o9 w{
* e2 U1 m  l9 D" m1 B) @/ o& Tunsigned long val; </FONT></P>
7 \6 f7 O( q4 @" |" w<><FONT color=#0000ff>/* get today's date and time */
* d+ }5 |4 h  G6 {* G3 _! R$ V- bgetdate(&amp;dt); * k  A8 A, `/ v
gettime(&amp;tm);
( o7 s1 Z1 r  ^( O. U' t6 y) n0 iprintf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>
  _6 a2 {3 k- ]5 G% Q<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */
. p+ x2 B% b  C" d+ nval = dostounix(&amp;dt, &amp;tm); : v) W4 g" q1 l8 B; ]- q% c- ]; k
/* subtract 42 days worth of seconds */   J6 c+ S" C; B6 _
val -= (SECONDS_PER_DAY * 42); </FONT></P>) d) Q, G' P, ?6 D6 E
<><FONT color=#0000ff>/* convert back to dos time and date */ 3 A/ B/ t2 ^/ K( d
unixtodos(val, &amp;dt, &amp;tm); & k; ]$ B7 h2 U2 ^- \/ N/ a5 o/ B* y/ a
printf("42 days ago it was %d %s %d\n",   L, J4 {- C/ ?2 ?2 n" V
dt.da_day, month[dt.da_mon], dt.da_year);
8 ~8 g+ i* \5 A$ oreturn 0;
  k: I; r/ A2 u% l  P! K}
& a$ T& i7 J4 E  H- [
( P, f2 r5 e% u6 ?3 L$ Q4 z8 t5 v  `9 l( K0 f7 W( K
</FONT></P>
- w3 t# X/ Z; q1 j* r( _. Y<><FONT color=#ff0000>函数名: unlink </FONT>
( J  p. N: w8 q$ C" V/ }1 o功 能: 删掉一个文件
( Y1 y4 Y2 t# S) T3 [! V用 法: int unlink(char *filename); 2 f" g$ o, q: z2 H2 _
程序例: </P>! c' ]9 X5 h/ D3 v
<><FONT color=#0000ff>#include <STDIO.H>
' L- V* B" [9 m2 M: A% T#include <IO.H></FONT></P>
" ?- L! M. S- e0 d<P><FONT color=#0000ff>int main(void)
* }" I6 u( H/ d{
! Y  e1 K8 y- D7 `" i6 c6 J6 `) {FILE *fp = fopen("junk.jnk","w"); 6 i+ n& r2 S% `) t: g
int status; </FONT></P>  k' g; |7 o) I7 J. Z
<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>2 ~. R# J: a$ o- O
<P><FONT color=#0000ff>status = access("junk.jnk",0);
+ g. K) C" L: ?4 _$ z* i# ]if (status == 0)
6 T4 j; ?& ]! }9 Q6 L2 \6 D: uprintf("File exists\n"); ( c7 V- D: |) j9 \6 @
else 7 G; T' I) {. I- c/ t1 Y6 q1 w
printf("File doesn't exist\n"); </FONT></P>
. c1 M+ Q! Q1 B<P><FONT color=#0000ff>fclose(fp); 0 N4 D3 }. ?) U( ~% _
unlink("junk.jnk");
6 W) p( n, z' E# r* T0 Tstatus = access("junk.jnk",0); & V% f, ?& o5 y/ M0 q! x
if (status == 0) : P. H: i" m4 L  A
printf("File exists\n"); . \  w1 p/ W9 m4 s2 u* n; w" x% B2 h
else ; f  T8 l5 E6 \4 n" o* P
printf("File doesn't exist\n");
' h+ A7 o8 Z% O. L+ I, J6 T7 K2 @, S</FONT></P>
4 s: v6 k+ f0 v* t. S* k6 E<P><FONT color=#0000ff>return 0;
( \  }& z( H0 V  e7 m" A}
* `' f6 B0 k5 P0 U5 ~/ v3 q7 U
  i& j' C9 y% q' i</FONT>
! h1 U2 g. n) k! W2 M7 `</P># N: n4 O7 f0 c% L) p. _
<P><FONT color=#0000ff>函数名: unlock </FONT>8 v. H6 ~7 E7 W1 c& ?
功 能: 解除文件共享锁
2 T8 e$ k6 j# k' C& `1 v/ y/ l2 m用 法: int unlock(int handle, long offset, long length); / m6 z9 f$ Q1 f, e# u
程序例: </P>$ Z8 [/ B- t9 }" T7 k! v  j
<P><FONT color=#0000ff>#include <IO.H>
/ f  @& c1 y- j3 D; Z! L# R/ z#include <FCNTL.H>( D" v& V" i( Q8 ]! {9 ^
#include <SYS\STAT.H>, b1 ~4 I" p$ ^! C1 ~
#include <PROCESS.H>
+ m/ S/ @2 l# ~* N+ y; {#include <SHARE.H>
8 v0 C- A$ ?3 ~; U/ V8 s#include <STDIO.H></FONT></P>
) s$ ^5 g# w& m<P><FONT color=#0000ff>int main(void)
* j4 o$ k; |8 M{
- t; x8 s9 z; V0 t% s0 Cint handle, status;
( l$ |* I. Q& U$ E1 Mlong length; </FONT></P>6 _. {/ Y* y2 o9 @% z  n8 P6 S
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>1 Z% p! u# j6 p) W& E" h
<P><FONT color=#0000ff>if (handle &lt; 0)
7 d1 z6 y" `5 l) e$ I{
8 ?; U0 Q: d) s1 t' c6 O! k% Bprintf("sopen failed\n"); 0 {5 w( K& i" m4 u4 [+ J/ l2 [- d
exit(1);
2 M" P% R( `: ?* T* ?2 S} </FONT></P>
. L9 z+ o2 ^4 Q& W3 F<P><FONT color=#0000ff>length = filelength(handle); 6 y& J/ O  Y8 v9 e
status = lock(handle,0L,length/2); </FONT></P>
, J3 i  Q# Y) ]. l- ]* [/ x<P><FONT color=#0000ff>if (status == 0) 6 }/ O" w4 g5 D& J' e9 [" U2 [
printf("lock succeeded\n"); 7 r5 G6 K* Y4 w) R1 `9 L) A
else 1 V3 v: |% T7 k1 n6 S1 v" A
printf("lock failed\n"); </FONT></P>) c0 i9 ^6 E8 ]7 U1 i
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>7 V* ]9 F- X+ N$ g& z& r$ }
<P><FONT color=#0000ff>if (status == 0) ; M0 u- l3 ?5 d
printf("unlock succeeded\n");
2 `6 A3 o  Q5 P8 s8 delse : t! t6 t+ ^9 A! v( ^9 h$ ^
printf("unlock failed\n"); </FONT></P>" v8 G9 @/ V5 t
<P><FONT color=#0000ff>close(handle); 1 C; t( H# \$ C
return 0;
/ s% S9 y5 L$ A4 W} </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-4-20 13:31 , Processed in 0.415764 second(s), 52 queries .

回顶部