QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT># k. ~1 U- M' |) m- a) N. r& O
功 能: 转换一个无符号长整型数为字符串 & R% e. [2 p) F& R1 j$ v9 x
用 法: char *ultoa(unsigned long value, char *string, int radix); ; |- X4 v9 \9 c- r. }
程序例: </P>3 z; r. @' I0 N. z
<><FONT color=#0000ff>#include <STDLIB.H>
5 S8 u% Q6 C- g: n4 }/ l#include <STDIO.H></FONT></P>
: o5 c, c5 x5 U; d) H<><FONT color=#0000ff>int main( void ) 7 K( d/ m# k+ c4 ?4 S# f: E* Q
{ - v% L" d( u, d1 w: v/ U: b, j' A
unsigned long lnumber = 3123456789L; 2 g" ~0 |+ z; E# ^5 P- |" D+ t
char string[25]; </FONT></P>
$ ~. R( i1 U/ q$ u( k' i% \<><FONT color=#0000ff>ultoa(lnumber,string,10);
4 J$ s6 b/ v# }, `4 l- R* `3 G3 Fprintf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>
6 N% M- O1 }6 d4 Y* ^3 D<><FONT color=#0000ff>return 0; . A1 Q  X* a' }8 q1 B
}
; \; |8 }4 Y+ g$ C; a  g2 {</FONT>
' t8 p$ [8 {! O! R4 j
3 U# H8 ?! L0 c) d4 A6 T# c- m& v6 Y</P>
/ Z; ^0 t  e4 l2 w& I( `0 P<><FONT color=#ff0000>函数名: ungetc </FONT>
; f* d. Z7 |! Z3 M1 `( I( Y& _功 能: 把一个字符退回到输入流中
' t2 d1 _5 _5 Y用 法: int ungetc(char c, FILE *stream); * F: W9 Y* o$ N
程序例: </P>
0 ]  _  |. j6 s2 J<><FONT color=#0000ff>#include <STDIO.H>
3 ]2 A+ X+ p1 [+ I#include <CTYPE.H></FONT></P>- r& ?% b- h' P' ^
<><FONT color=#0000ff>int main( void ) , b& n* P6 j6 @# \) w
{
' ?( }6 c$ q) T; R1 }% j: cint i=0;
  w8 s* ~! S9 D. }+ Mchar ch; </FONT></P>  C7 f3 X8 Y$ ?6 D
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>& E7 N+ [# I6 P$ o( H$ a
<><FONT color=#0000ff>/* read chars until non digit or EOF */ * H7 z2 z* k$ g" ^" M6 ~" C4 O! s
while((ch = getchar()) != EOF &amp;&amp; isdigit(ch)) 2 g7 _3 k5 f- A. I0 ^# l( R" }) x
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
* v8 r$ V4 ^* Q4 W" S; i! z<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
" j' W3 _9 ?) Z- F8 G& A2 Wif (ch != EOF) 7 J( b& L9 N$ A
ungetc(ch, stdin); </FONT></P>: N# H& o8 a3 S7 A6 l5 r, }) K/ V4 n
<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar());
8 j- H' [4 a6 W) Xreturn 0;
4 p, R5 C6 q  |' i6 b% P} </FONT>9 e! {- Z' Q/ z' d6 q( f
$ t+ U' Z' T+ W7 C+ u) ^3 p

6 `1 D3 R. j* U; H/ E</P>8 B6 o( X; O6 V7 V7 d
<><FONT color=#ff0000>函数名: ungetch </FONT>$ @3 x; g8 t1 N; n
功 能: 把一个字符退回到键盘缓冲区中
- K0 [# j' C# ?' s5 ]1 P/ ]- z( ]用 法: int ungetch(int c);
1 S, B' l' R" R/ H; w, [- |程序例: </P>
8 ]3 m2 K- W* @<><FONT color=#0000ff>#include <STDIO.H>
' O4 P, [, S- W% ]. d#include <CTYPE.H>" W4 G8 p, _$ E# r3 T6 a
#include <CONIO.H></FONT></P>: j5 I7 G! U2 h- F3 Q8 F
<><FONT color=#0000ff>int main( void )
8 r1 f# L. B  H3 k) p5 i1 O{
4 N( ~4 Y7 U# p) n1 Jint i=0;   P5 s+ @# T7 V$ b7 o5 p
char ch; </FONT></P>
: s2 O$ a8 Y, }0 U( L( \% n<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
) t9 Y2 e: T$ z  e7 x' ~7 ?<><FONT color=#0000ff>/* read chars until non digit or EOF */ 7 v' R+ Y; F; J2 H2 v4 A
while((ch = getche()) != EOF &amp;&amp; isdigit(ch))   h! F2 |" m4 S6 N6 g% i6 N7 i* P6 C* B
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P># F% B! _! t1 y5 b) P7 V: k
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
+ q7 H9 b, j; Yif (ch != EOF)
+ H0 Q% C9 r4 V% Yungetch(ch); </FONT></P>+ j5 v7 `; ~* D: o* D' G8 Q
<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch()); 0 m$ U1 i, j% h4 U. f1 ^( R
return 0; ) K1 U/ ~+ x  {) m: ^
}
4 G9 `7 ^( @; M+ H. \+ [9 E# K8 u+ `
  s% u, G/ ]/ {1 G$ w; A
" w) c( j; O) k8 r</FONT></P>5 V# r8 f; }' O
<><FONT color=#ff0000>函数名: unixtodos </FONT>
3 H2 N) E4 W: ]+ r7 |& ^功 能: 把日期和时间转换成DOS格式 ) g# I, b/ t  {0 S' z2 r9 X. ?4 S
用 法: void unixtodos(long utime, struct date *dateptr, + A9 J, r! p( \7 n# A. b  _1 Y! w) a
struct time *timeptr); : O' l/ f- y! l' O! E; Q, Q& A3 L
程序例: </P>" b! X9 W+ k5 X  [: x) A' w& d
<><FONT color=#0000ff>#include <STDIO.H>! f/ v( u4 Z* Z$ R) u+ X  i
#include <DOS.H></FONT></P>: O3 @. x( F7 h/ `& C; d- D- n
<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun", ; O0 m. i" U9 i7 o) D) ^# E
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>
" m' \0 b7 q4 n$ k) m+ ^<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>
- H) f# ~; W: {2 f# @% j+ L, T<><FONT color=#0000ff>struct date dt; ' i; a' L0 d+ }
struct time tm; </FONT></P>
" j9 b9 @$ E8 {2 t. Z<><FONT color=#0000ff>int main(void) ) j0 C. ]; H7 K( c8 F/ D
{ 8 W, x4 d; u) ~" v8 b
unsigned long val; </FONT></P>4 i1 q' K) ~; \+ Y+ `  O
<><FONT color=#0000ff>/* get today's date and time */
0 ~) f6 V6 m9 rgetdate(&amp;dt); ( a* b* M2 |3 C) |
gettime(&amp;tm);
2 ?4 c  J% |+ c. R4 w4 z6 c% aprintf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>
) `  l. P9 p5 o* j# R! U( W<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */
$ x& g" g: k9 Cval = dostounix(&amp;dt, &amp;tm);
; i3 M7 s9 ]7 ^/* subtract 42 days worth of seconds */ - a% v8 X5 j: |1 V* c8 a
val -= (SECONDS_PER_DAY * 42); </FONT></P>
' ^* `+ x, ?, ~, T5 S<><FONT color=#0000ff>/* convert back to dos time and date */
( N3 h1 x6 F3 W4 ~' Junixtodos(val, &amp;dt, &amp;tm); + Y/ Z' ^1 I' I! I) ?1 b. S8 x. S
printf("42 days ago it was %d %s %d\n",
7 Q3 c% y/ {9 G, k1 [dt.da_day, month[dt.da_mon], dt.da_year);
& e* k# U& t0 {+ t4 s+ Greturn 0; , q2 n  M6 B' l
} 0 r8 J9 l. _! M. q

6 o- ?# K2 c" @6 w4 @. f& H+ Z: f6 f( B; f# I3 `- I5 H! M6 ]+ x
</FONT></P>
( c$ e# U! S3 [' t5 x& {6 z+ D<><FONT color=#ff0000>函数名: unlink </FONT>5 i1 |( o& y( U# X% B: I& s) d
功 能: 删掉一个文件 + C% V5 B$ z  ?
用 法: int unlink(char *filename); + b4 ^3 o' ^  T: [) \8 K) }  l
程序例: </P>0 h- `4 q9 e- l
<><FONT color=#0000ff>#include <STDIO.H>. a+ g9 ^' @% p/ ?
#include <IO.H></FONT></P>; A9 p% d5 ?8 R4 a; y
<P><FONT color=#0000ff>int main(void) - i( n% J4 B$ [3 z2 h4 B" O
{ . ^% u6 e- F) ~5 G/ G' _
FILE *fp = fopen("junk.jnk","w");
$ `# @/ [, [' H6 iint status; </FONT></P>4 O9 O9 z$ i4 \6 a- p: _- M2 \
<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>
/ Y/ {& S$ K0 {8 d0 h<P><FONT color=#0000ff>status = access("junk.jnk",0);
- p9 _/ J) n  Bif (status == 0)
: B& f9 x! R6 Iprintf("File exists\n");
/ [, I! q9 j6 I& `else 6 e, p, B6 ?4 |9 r7 E2 Q
printf("File doesn't exist\n"); </FONT></P>4 N/ d4 t0 A& X1 e; F
<P><FONT color=#0000ff>fclose(fp); 3 S! G4 x2 Z0 v- N4 b5 G# a
unlink("junk.jnk");
- H0 }; s& S4 s. i0 Bstatus = access("junk.jnk",0); , l2 }( y  y2 Q( G# k6 D# [+ A5 C
if (status == 0)
3 _2 x6 j3 o1 r( c9 n7 q& Bprintf("File exists\n");
. Y. G( s: F/ gelse 6 h+ S) \0 x! R5 _5 q( W
printf("File doesn't exist\n"); # R- @' w" Z5 c
</FONT></P>6 O8 L3 u5 Y( X+ u# w
<P><FONT color=#0000ff>return 0;
3 ?* v  A2 i9 Q5 J) i; o}   x! e/ I$ @  V

) _1 M- u! P/ @6 u</FONT>/ `6 X, M: E, y+ l4 o
</P>
8 a+ W4 g# S* W* v. k<P><FONT color=#0000ff>函数名: unlock </FONT>4 D: N0 D5 U. {5 X  K( t
功 能: 解除文件共享锁
" s$ a1 |4 d, V6 |. K0 V用 法: int unlock(int handle, long offset, long length);
) @0 a) N" m2 x; X3 {程序例: </P>
  A. W9 K3 u* Y8 ^$ `4 b# Z<P><FONT color=#0000ff>#include <IO.H>
" p, \# k. r% W3 S' }; _  A#include <FCNTL.H>
. ^, c. Q8 |  [" R4 Z#include <SYS\STAT.H>
; s. I4 m8 T7 }; M9 P#include <PROCESS.H>. v$ }$ k# o5 T: b2 p+ j  [$ ?0 a
#include <SHARE.H>
& t0 U5 Q$ q  F2 A* y+ ]- @6 ~9 n& X! h#include <STDIO.H></FONT></P>
8 O4 n* ?4 E9 M) H6 a7 W! R+ Z<P><FONT color=#0000ff>int main(void)
  t9 T0 l$ _8 z% F{
9 N* Q* e& V; U* P3 |" Aint handle, status;
, Y& q- ^* p; J4 f  d6 qlong length; </FONT></P>* @, L  l0 x8 B: ~9 [7 d  V. ?
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>3 U/ v6 s: K. Q) z; j. d8 N( h
<P><FONT color=#0000ff>if (handle &lt; 0) + M( d7 |" o& K* i
{ ) b" y2 G/ d; T2 y& L
printf("sopen failed\n");
! u, w. {" [) U2 o5 V. ^exit(1); * _  h) Z7 K7 y! L3 E" G6 T. ]
} </FONT></P>, v5 t6 Y, f% |4 U0 t
<P><FONT color=#0000ff>length = filelength(handle); ( }# Z1 n& \9 ]: ]# b
status = lock(handle,0L,length/2); </FONT></P>
1 K& {+ N- T0 j+ }& V, i<P><FONT color=#0000ff>if (status == 0) . Z" C, m% n3 L5 F5 j# b" c6 G  ]$ j
printf("lock succeeded\n");
$ D6 T6 d* T4 d" |$ K4 Celse
6 K# g/ f4 Q, S8 c0 V; nprintf("lock failed\n"); </FONT></P>4 c: |! w3 \1 K$ W
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>+ s4 A$ b2 |: n- E6 |
<P><FONT color=#0000ff>if (status == 0)
3 A9 H9 h- I' ^- Uprintf("unlock succeeded\n");   r9 K& ], ~: S# R9 S/ r& X) q
else # G4 X+ W! L& U
printf("unlock failed\n"); </FONT></P>$ T0 b8 s: e# s% |& C
<P><FONT color=#0000ff>close(handle);
" i; g% n) n3 x) `. `return 0;
' L- \  D: Q* \( J6 a  S1 Y} </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-11 07:23 , Processed in 0.269218 second(s), 52 queries .

回顶部