QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT>
$ m, W* i& J* j3 N( }3 V; |功 能: 转换一个无符号长整型数为字符串
% |2 n# x) y0 W! ]7 ?5 v+ a' t用 法: char *ultoa(unsigned long value, char *string, int radix);
! x0 `$ O, i# f) O; v) o程序例: </P>* ]" B* D' E" Y6 c' N* P6 `
<><FONT color=#0000ff>#include <STDLIB.H>
  S% J$ z5 m+ c#include <STDIO.H></FONT></P>2 x! J/ Q# ?2 k# U  E
<><FONT color=#0000ff>int main( void )
4 b/ F; T% ?5 c6 v3 v; s{
4 A- p, V8 o0 H9 junsigned long lnumber = 3123456789L; 2 K3 |+ ~) }$ E
char string[25]; </FONT></P>; o; s( N8 b, r7 d7 i' b5 h7 E, B
<><FONT color=#0000ff>ultoa(lnumber,string,10); / n7 @& E& p+ H- M( X
printf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>
. w# J- [7 K- R* ~4 t$ q<><FONT color=#0000ff>return 0;
% A1 @* c! t/ N- D% w}
9 Q8 A# s7 y7 j/ C& q</FONT>! A3 l. Z7 N: Q  ^1 p
, y1 {. z+ o& |5 U
</P>" s# t! q" e# W/ ~0 H2 J
<><FONT color=#ff0000>函数名: ungetc </FONT>
5 z, s' [, T5 j/ Q* r功 能: 把一个字符退回到输入流中
. v6 u9 K- s5 H: M用 法: int ungetc(char c, FILE *stream); 6 F! y, L" N: c* j/ K2 A
程序例: </P>( e$ V3 f6 |* h' q4 m0 O2 H) {
<><FONT color=#0000ff>#include <STDIO.H>! K' I# l0 T- r# r( g! ~; P
#include <CTYPE.H></FONT></P>. E1 D3 n! J% X0 C$ B2 j
<><FONT color=#0000ff>int main( void )
$ n$ O( K+ ~  [8 `{ - ~  E- X- f* A+ W7 l
int i=0;
. ]. a( k% _& K/ T" Ychar ch; </FONT></P>
6 s/ _- h$ Q- M) D6 Q1 y7 r6 t6 v<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P># o/ k, E. I0 J" F
<><FONT color=#0000ff>/* read chars until non digit or EOF */ 9 Y9 F* w4 E% v! f  j
while((ch = getchar()) != EOF &amp;&amp; isdigit(ch))
2 z9 M. x4 s( c5 v6 d9 m3 j2 ji = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
- P* j- A5 R$ ^" {; ~<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
' i" I; {3 ^, e" _; \# C2 Hif (ch != EOF) ! Z7 n3 u/ C6 g+ T9 }2 W/ }
ungetc(ch, stdin); </FONT></P>
; x5 z0 R; N  V  [( |) R<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar());
. t4 U9 M1 M; N/ T. t$ Kreturn 0; 9 _) ]0 _  ~# f- e0 B" |) T
} </FONT>
) ]- x) L1 c) Q, `, H2 d5 a4 Z: R8 v
9 L( @& M' ?) [! R  C: T2 q; ^/ u8 ?+ C! s
</P>, Z1 k/ ~7 H& s1 O. d; o
<><FONT color=#ff0000>函数名: ungetch </FONT>, k! D! n! y# s8 T& G+ x
功 能: 把一个字符退回到键盘缓冲区中 " g& l  d3 p5 b+ _- F
用 法: int ungetch(int c); 9 l- Q1 P# a8 L; T% z# |9 Z
程序例: </P>! m0 M3 c* U* b# u
<><FONT color=#0000ff>#include <STDIO.H>
. k; K) z( C9 X; p, G#include <CTYPE.H>- {& H7 k+ v, |, J: ^  J, Q
#include <CONIO.H></FONT></P>' b: }; ]8 P. {
<><FONT color=#0000ff>int main( void )
2 p& a2 v$ |: i: V; W, E% E" d{ ' ?/ ^% Z" w7 _$ g, O8 H
int i=0; : @( l& X/ D3 u# m
char ch; </FONT></P>: H7 `2 u+ _6 w( s" w$ q
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
6 Y, b4 P" _# v4 r5 I, ^<><FONT color=#0000ff>/* read chars until non digit or EOF */
2 M1 l( J0 Q) a  t/ ~/ Q5 Nwhile((ch = getche()) != EOF &amp;&amp; isdigit(ch)) ) N  H: A5 F$ P& X' g  W
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>* N4 E* `# q/ i8 \
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
9 b& B  z2 J: @# a- u! S3 m* M) {( C3 hif (ch != EOF) ( j7 j1 L$ K! P+ e7 B
ungetch(ch); </FONT></P>" m+ {& b& ^8 Q; K
<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch()); : |8 D0 A4 d& }+ [3 d3 Z" Y9 @
return 0;
, D% f% r* `0 i! m8 T  K}
. x8 `; ^( R$ n0 J4 G' s3 x' N! n% U( U
9 k5 l7 F8 g. c- V" x
</FONT></P>
8 u4 W' @2 }  _* T! O9 a<><FONT color=#ff0000>函数名: unixtodos </FONT>- B! |4 L' L3 }, T& h
功 能: 把日期和时间转换成DOS格式
. t* N* G# d; B2 k! c( S用 法: void unixtodos(long utime, struct date *dateptr,
# `0 A% ^# p, q+ i5 Kstruct time *timeptr); 3 _8 S+ ~2 V9 s) N! h* U6 I
程序例: </P>
  c) i1 L) F8 m  }- S; S2 t* I& Z<><FONT color=#0000ff>#include <STDIO.H>
, R1 Z# J' o! s#include <DOS.H></FONT></P>
  d+ h/ ?4 w! Q, l0 _# D& v0 l<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
( m0 l1 C/ x# q- a3 m/ w1 }"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P># j9 H# t) Z9 l2 ~
<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>
" h1 B. N$ p; d2 N# @0 ^<><FONT color=#0000ff>struct date dt;
7 t6 f3 Q7 X4 k; S0 {! qstruct time tm; </FONT></P>" E: a% a, Q; L+ ~- H  H
<><FONT color=#0000ff>int main(void) 7 N. b* v2 i4 G( F8 A+ ^0 I
{
. k4 A/ M7 a5 u8 u9 M3 F  r& g& nunsigned long val; </FONT></P>
# T% C. [  @6 R2 B5 G; d<><FONT color=#0000ff>/* get today's date and time */
( r' ?3 r$ o( M: A/ I$ N9 |+ v; \getdate(&amp;dt);
6 P1 k$ S( @( O) r, ?/ Cgettime(&amp;tm);   _% T9 g; x' }' o4 @
printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>& J6 b4 Y& j) p* H3 F3 R* Q
<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */
# U, d( L% O  d2 Dval = dostounix(&amp;dt, &amp;tm);
0 H+ n8 G8 A2 E+ S5 S3 |/* subtract 42 days worth of seconds */ 5 t3 i7 J! h+ i  f
val -= (SECONDS_PER_DAY * 42); </FONT></P>
% }4 E, [0 U' W<><FONT color=#0000ff>/* convert back to dos time and date */ $ K% S; H2 T& j9 R3 T
unixtodos(val, &amp;dt, &amp;tm); 5 p7 i( S; j5 f9 R
printf("42 days ago it was %d %s %d\n", 2 x' r( J; ~' z
dt.da_day, month[dt.da_mon], dt.da_year); / t' S- [2 |$ y2 }4 H
return 0;
/ V; Z( u; z  w! H0 w- g} 0 Y& y+ B" B, h- m7 V1 j
5 I) m* a+ [- f" _
& Q3 l+ ^9 j  y# `% L! B& K
</FONT></P>
( X2 r$ h6 _9 q# ]6 r: X8 B* D0 Z<><FONT color=#ff0000>函数名: unlink </FONT>$ m8 o: i0 A) y, o: {, ^9 k
功 能: 删掉一个文件 $ C% d" I) p) M; e, x' _- z
用 法: int unlink(char *filename); 1 K% a4 Z! \, G3 b8 |" s
程序例: </P>: i: m- `3 C" P; m0 g
<><FONT color=#0000ff>#include <STDIO.H>! s9 f0 K" E2 g+ s+ f
#include <IO.H></FONT></P>& j% ]: z) g+ h; i
<P><FONT color=#0000ff>int main(void) ) _1 ]5 r$ M6 L2 c1 T
{ 9 ~3 k8 [: ]9 m  W; I0 @
FILE *fp = fopen("junk.jnk","w");   W- k7 J* I% o
int status; </FONT></P>
, j/ D7 ^# C" R' K- ?<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>& Y  n7 C3 ^! s9 y! N1 ]' m
<P><FONT color=#0000ff>status = access("junk.jnk",0);
* |) |( y* c" [1 O- A" T. _1 k3 `if (status == 0)
% j' i4 v/ U9 w4 Y1 k; xprintf("File exists\n"); ; Q* [! ^8 d* y. |
else 6 j$ a2 ~- a& R
printf("File doesn't exist\n"); </FONT></P>
2 }7 }2 X* s( H9 }) k9 ^* J. }<P><FONT color=#0000ff>fclose(fp); ' M2 t2 {2 k# a* \5 n7 `& V
unlink("junk.jnk");
( w: z8 I' s/ p# P3 y) P6 ~7 zstatus = access("junk.jnk",0);
- k/ f8 J# A3 N8 T: Tif (status == 0) 2 q" M) I, F$ P" N- E
printf("File exists\n"); ( |, f! W% l$ N& G! }2 W0 v- X
else - {6 W7 w, p( e& h. ?) G
printf("File doesn't exist\n");
( X" e$ x* ~6 k* j0 G8 c4 S! L</FONT></P>
$ j/ Q8 ]+ ^6 X- A0 a$ w<P><FONT color=#0000ff>return 0; ( ]0 k' P! r4 ?
}
6 e* n1 a0 L* F1 W9 u( L. [+ P# x/ ?. X% Y: |* g
</FONT>
% u9 v" n9 _+ B/ Q</P>
# E: O5 h4 J3 }4 p2 b, p<P><FONT color=#0000ff>函数名: unlock </FONT>2 {1 V0 M( A5 G& C' R$ m+ }
功 能: 解除文件共享锁 " h7 ~8 b; h  P( y2 D
用 法: int unlock(int handle, long offset, long length);
3 d+ ~" j" m1 F: \) ~: l程序例: </P>
# \7 Y) s, q+ t. p" {<P><FONT color=#0000ff>#include <IO.H>. i( P5 S6 m: q; E2 n) w$ [
#include <FCNTL.H>
% [% j& R$ N& Y6 e: l#include <SYS\STAT.H>
) g, L  ^$ `. S4 i8 R( [1 J#include <PROCESS.H>
& w$ C" H) p5 r3 ^5 r9 C9 ?& P! W#include <SHARE.H>
- R8 Z2 S6 x$ n0 k1 f# ~#include <STDIO.H></FONT></P>4 k% y* i) i. ]" j9 y# B
<P><FONT color=#0000ff>int main(void) ; J8 c  v/ }  e% S1 C- X
{ ( R3 E8 I/ A+ i. N+ B0 }  [
int handle, status; * t7 e$ A1 X- @6 f2 k4 _& R
long length; </FONT></P>2 k. x2 Z, ]" d0 F0 Q1 B- `+ P# m
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>, C" h+ B: w1 i
<P><FONT color=#0000ff>if (handle &lt; 0) ) @; [9 z4 M8 B7 U, E6 h, T
{ 8 g# N* Z6 n. g  n4 L
printf("sopen failed\n");
" f: W/ [* j# \& v  ]& oexit(1);
) k+ p5 E/ U/ c1 e7 {& E} </FONT></P>
" t' O9 d; X* p" j' P1 l<P><FONT color=#0000ff>length = filelength(handle);
' E! d; P+ L" B  R2 ^" r* ystatus = lock(handle,0L,length/2); </FONT></P>
6 d! H$ O1 L2 X3 V<P><FONT color=#0000ff>if (status == 0)
# b, o! @0 }7 e! c* b+ jprintf("lock succeeded\n"); " h. y" z- Z  m' A6 u9 X: u7 p/ H5 [
else
/ f6 M9 K! {1 |/ @/ Q- x. s( s2 \% Mprintf("lock failed\n"); </FONT></P>
/ X. S- ~3 x! N: L8 \<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>/ F1 p' ?0 S/ j" \: r
<P><FONT color=#0000ff>if (status == 0)
/ ~' J/ v4 ]9 H1 F" t/ G$ rprintf("unlock succeeded\n"); 7 p% U' X3 k* D/ w* a; K
else 6 Z$ _, ^$ a. b6 n, g" K
printf("unlock failed\n"); </FONT></P>
# D1 Z1 D  M) Z<P><FONT color=#0000ff>close(handle); 0 C  M* H: J$ [
return 0; ; g- ?5 d6 A1 J- v/ P
} </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 06:22 , Processed in 0.404303 second(s), 52 queries .

回顶部