QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT>! @2 ^6 I9 j  S7 U  D; B1 T
功 能: 转换一个无符号长整型数为字符串 ! T6 v5 K8 |8 b% M& G0 {
用 法: char *ultoa(unsigned long value, char *string, int radix); / h# o3 t2 C1 E4 y  d. x
程序例: </P>
# f9 X" v- G; u3 U& }0 U# |3 t<><FONT color=#0000ff>#include <STDLIB.H># f/ d( C# v- y6 ?+ T, f
#include <STDIO.H></FONT></P>3 Z# u, s8 t2 s, S; q3 U: A
<><FONT color=#0000ff>int main( void )
- s3 z: _. S  v{
1 ?2 L$ s/ V0 s+ @: Junsigned long lnumber = 3123456789L; " D7 I; V) Y! W  T' z  \
char string[25]; </FONT></P>
  u& M2 P8 a/ k! v/ |9 V<><FONT color=#0000ff>ultoa(lnumber,string,10);
: s9 B2 F& ^; [. _2 ~/ Zprintf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>2 }) |' t+ v; N
<><FONT color=#0000ff>return 0; + ]6 [0 L; I6 o7 C! z, ]% o7 [
} : R6 y4 o! k1 p- ]9 t/ q8 ~$ i
</FONT>
$ p- K4 L8 r! y' t0 |1 Z/ ?$ _. S# p! j! m. K, \! J5 \/ I4 V2 \
</P>
5 F% h) j/ ]; A9 z% ]8 i  }<><FONT color=#ff0000>函数名: ungetc </FONT>4 f; Q4 B0 g0 W; T& _
功 能: 把一个字符退回到输入流中 * @# ]+ {* h. V, C1 X( s/ T& W3 `
用 法: int ungetc(char c, FILE *stream);
3 |' n0 ~) a/ z/ m, g, G程序例: </P>
4 g- W9 K5 P9 Z$ F1 ?( n4 Q<><FONT color=#0000ff>#include <STDIO.H>( o+ A+ U7 j* B: V# f
#include <CTYPE.H></FONT></P>
- s) V5 d: z: y$ G0 D( r1 }( L<><FONT color=#0000ff>int main( void ) ; V: Z9 \0 ^% e! c! B( B/ u
{
* M- c1 Q0 y3 i. r( {) L8 e+ nint i=0;   F; i6 H6 E+ ~6 [% k# z
char ch; </FONT></P>
( W: \. C- Q; k5 Q/ k( n- D<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
/ R- S8 ?& U- {: @9 `<><FONT color=#0000ff>/* read chars until non digit or EOF */
& q+ E2 A- \3 l, rwhile((ch = getchar()) != EOF &amp;&amp; isdigit(ch))
& q4 O6 m! C1 h" n" y7 _# j/ k- vi = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>8 L; ^) i9 I2 c. T  E
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ : ~$ F9 _; h9 m( P3 X8 r  z( X
if (ch != EOF) & Z5 _* n1 V3 t3 D: ~
ungetc(ch, stdin); </FONT></P>
5 a+ J3 f5 }8 O/ G2 J+ y<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar()); 7 t. [7 `* R  [
return 0; # Q: ?) g6 ^. E) w7 }3 h: `
} </FONT>
" ^: n% i4 {( w  t7 a' N* |! k0 b" a! z4 }2 [2 P

& v1 m/ h  R! o3 G6 J0 \# l</P>
' J4 H" k$ \3 c/ j; V# J<><FONT color=#ff0000>函数名: ungetch </FONT>; x, P( W+ a+ x  K4 e9 w  {3 E& r
功 能: 把一个字符退回到键盘缓冲区中 % s5 }5 N& h( A6 ]$ a9 k7 {& p9 `
用 法: int ungetch(int c);
0 O. y3 O% ]9 G3 z/ k& d程序例: </P>- ~) K9 u' D; k. J  l  h9 B
<><FONT color=#0000ff>#include <STDIO.H>2 f; k0 z0 D5 U& d
#include <CTYPE.H>1 X/ e: @2 ]8 b) a/ E; K" H# @8 y4 k
#include <CONIO.H></FONT></P>
4 u$ v& L4 H- u" T5 ~( k4 a5 X! p<><FONT color=#0000ff>int main( void ) 5 h/ `, Q* n9 y$ k3 m& S
{
& [9 @3 L" ^4 E' i2 @" Aint i=0; ) |; ]1 k4 b' W0 {8 z$ h
char ch; </FONT></P>0 p1 D: L: G3 `: [. [( U
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
! C/ _, Z/ h: R9 b, u$ @<><FONT color=#0000ff>/* read chars until non digit or EOF */
3 t" f  I  ]% ?# C) ^) Q9 twhile((ch = getche()) != EOF &amp;&amp; isdigit(ch)) 8 M) F* l0 s: b' a4 y. {2 Y
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
! @* J3 `9 a/ V- I6 \4 h<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ 3 ]& t/ _, O( F1 c. e
if (ch != EOF) . |, @, J' n. [+ ^
ungetch(ch); </FONT></P>5 l$ V4 w) B5 w& G0 e. E
<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
8 x3 H+ ^8 w8 t( A  Yreturn 0;
2 G% Z. O* g/ w. F# M} 0 P! r$ d0 b3 P" o( c
. e* X+ ^& |# e
0 o- `/ D( p# j% T
</FONT></P>- ~, [) w" M0 u" `
<><FONT color=#ff0000>函数名: unixtodos </FONT>
# b& q% N% o4 I- Z% ~& z功 能: 把日期和时间转换成DOS格式
, W, }) v3 v* ~7 P& \* r2 R  I! M用 法: void unixtodos(long utime, struct date *dateptr, ) y# a, o) S) h
struct time *timeptr); 0 Q7 s- c7 F% q" d7 h
程序例: </P>
  Y! K' J- {9 o" t<><FONT color=#0000ff>#include <STDIO.H>
3 F) |% _: V0 p+ c& k: `/ A. z#include <DOS.H></FONT></P>5 p$ V  F6 I7 r
<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
) q/ a9 a# ^& Y/ C9 u# S% \"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>
4 K4 ~% A4 l( x2 E' w<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>
& m' U3 O; z2 _! T, n% ?<><FONT color=#0000ff>struct date dt;
' c. X/ C3 n( s- tstruct time tm; </FONT></P>
( ]7 g6 f+ G9 s% R) C+ v, `7 R- k6 \<><FONT color=#0000ff>int main(void) $ O: j' L& a$ [# ?( r) Q  t
{
; k' n( U5 _: Y. i6 v$ I4 z/ ~unsigned long val; </FONT></P>& t0 W6 F' I8 ?7 i* ?# q) _
<><FONT color=#0000ff>/* get today's date and time */
- V7 u7 S5 S' v8 `) v; r! V! {" Tgetdate(&amp;dt);
1 Q! @' y. U; xgettime(&amp;tm); 4 E. i  A9 n# c6 {. K5 u
printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>) W# o5 z# D! ?/ s! n6 H
<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */
& c0 k, k$ o6 ival = dostounix(&amp;dt, &amp;tm);
, x: B8 T( P( b0 P$ p$ K/* subtract 42 days worth of seconds */
) r. p& y) p- Y- P! U, ?1 aval -= (SECONDS_PER_DAY * 42); </FONT></P>
+ L- O$ Q7 x( z/ w9 ]<><FONT color=#0000ff>/* convert back to dos time and date */
. i( r: ~2 C: _) o/ g3 ?unixtodos(val, &amp;dt, &amp;tm);
) i( Z9 \9 W/ L6 o1 c  `printf("42 days ago it was %d %s %d\n",
6 N: B+ K1 K  w' f& k5 h2 {! S9 jdt.da_day, month[dt.da_mon], dt.da_year);
5 n( p: R( k! G& Vreturn 0;
$ l; `% \% Q" t$ Q+ n3 [3 A} 0 v' l$ S& ]" ~# v; F# d" V  q. T
( p# @! P0 g* ?8 J- _
2 Z2 A; T  E. V) T
</FONT></P>4 B7 Y# {" s6 n! }/ X
<><FONT color=#ff0000>函数名: unlink </FONT>! C8 l1 H9 A( T* ^& W; V
功 能: 删掉一个文件 ! q! F& X0 l4 `& i) k" P* ]
用 法: int unlink(char *filename);
+ A# r/ d( ^8 W  [5 ~+ U1 i程序例: </P>
) r/ i- G0 J" Y( C& Z  z/ u$ j3 F: f& B<><FONT color=#0000ff>#include <STDIO.H>( O& e; r' R; A- O6 J- W5 S
#include <IO.H></FONT></P>
6 w' n  t+ u2 u) a% R9 M<P><FONT color=#0000ff>int main(void)
. W3 B% [1 V( K6 T{ 1 E% W4 H1 x- M( o. N
FILE *fp = fopen("junk.jnk","w"); " U* `# X9 m$ w' @$ ~* H0 h
int status; </FONT></P>$ Z8 \$ f, S( F7 Z, U! @% u* z
<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>$ a# R8 M+ P( q
<P><FONT color=#0000ff>status = access("junk.jnk",0);
+ D- a2 h; X0 U/ Z) ?: Zif (status == 0) , H# w: Q" w2 j/ k
printf("File exists\n");
. w( x8 G9 c3 v1 s+ A& Celse
' T( K, p2 I4 q' {. A; wprintf("File doesn't exist\n"); </FONT></P>" u  ^: V8 Y1 J7 N: W4 K; z' s
<P><FONT color=#0000ff>fclose(fp); ; ?1 Q" k4 w1 r$ r0 w% \
unlink("junk.jnk");   G. j9 o+ Q4 F/ P
status = access("junk.jnk",0); + m0 W' i0 W! m/ S# W2 m; [0 V
if (status == 0) ; `3 b* H' j# U& C+ g
printf("File exists\n");
& K( k+ i& X) j  K6 K, G' E  [4 \( melse & Y( {5 f& y# \- w" C! v
printf("File doesn't exist\n");
) P$ m! f8 J5 n- K+ \</FONT></P>) C9 u; }% }- F1 [1 T
<P><FONT color=#0000ff>return 0; . l+ k: Q" L+ x' {4 [
}
( i9 S$ [" E) @9 y! y- d2 T1 n2 @# k% ^  ?3 ^5 a, S- |$ |$ `
</FONT>& z* k  Y( A- z# ?+ H1 h
</P>5 j0 L( W6 a# i" F# }" X
<P><FONT color=#0000ff>函数名: unlock </FONT>: `# ?" a" e9 [, ~6 o+ I) b
功 能: 解除文件共享锁 5 |) Q4 P) ]" x/ B2 q, ~, D
用 法: int unlock(int handle, long offset, long length);
& e! @( L9 G5 M; c程序例: </P>
1 w9 k+ ^& |0 i, b% r! [/ h6 b1 G<P><FONT color=#0000ff>#include <IO.H>
! P) ]' q& s5 `' J" ^1 ~0 \#include <FCNTL.H>7 t% ~$ u5 l+ I# N6 v; p
#include <SYS\STAT.H>4 D8 g1 s. F# h+ ~2 Y& |9 g$ c( I" R
#include <PROCESS.H>
& D4 p5 Y& l3 ?' ~( b4 p# J1 O#include <SHARE.H>
! q, v6 o. T* X  k#include <STDIO.H></FONT></P>9 ?5 c# M, \7 z3 H: X7 _
<P><FONT color=#0000ff>int main(void)
4 o. h2 p/ n# H, y* D3 V- Z& r1 G; W{ 6 ?/ X: ~4 v# d9 @- S& U( a8 x( m
int handle, status;
; v/ D& E9 [7 G& @) A1 Ilong length; </FONT></P>7 W; o" G( o9 L  m% ?' k
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>! m9 W  Z: d; F4 ~; O& I
<P><FONT color=#0000ff>if (handle &lt; 0)
" ?, a" G! v. j& `! N9 S{
* W/ `  A& e3 v" O" N3 Zprintf("sopen failed\n"); 6 q" o7 W/ ]. X3 u7 E/ G/ p4 x' e
exit(1); : s# {* E4 o; A/ C% q4 i5 \
} </FONT></P>
8 }% i5 }4 p, [- Z5 _<P><FONT color=#0000ff>length = filelength(handle);
- o1 g. \% y/ vstatus = lock(handle,0L,length/2); </FONT></P>
( B* K5 M! x$ J8 x3 l( x6 E( U<P><FONT color=#0000ff>if (status == 0) : x4 ^# {7 z8 e) t" l: \8 d
printf("lock succeeded\n");
# Z- b" w4 B# Jelse 9 g: S/ Q+ r* m/ Q
printf("lock failed\n"); </FONT></P>
1 R" O! Z6 v  z$ u/ Y' ]" V<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>+ _& M) l% o0 F! z! y
<P><FONT color=#0000ff>if (status == 0)
) v% @& |, @3 H8 x( J7 X+ ]printf("unlock succeeded\n");
# o8 h0 _- V  E( G( s/ helse ' v% k4 p5 _2 S2 S: V7 J. y
printf("unlock failed\n"); </FONT></P>
. e& a' _2 G6 @- _<P><FONT color=#0000ff>close(handle); 9 _" J- \* N' S* Y# W9 }4 |" e
return 0;
$ m9 a5 A+ G- 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-10-24 02:22 , Processed in 1.471972 second(s), 51 queries .

回顶部