QQ登录

只需要一步,快速开始

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

函数大全(u开头)

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-4 02:54 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<><FONT color=#ff0000>函数名: ultoa </FONT># t+ f) }+ E" B$ y
功 能: 转换一个无符号长整型数为字符串
2 C+ e; }5 p$ g8 X$ b. {用 法: char *ultoa(unsigned long value, char *string, int radix);
' w( T, ~/ B0 z1 L9 I- Z程序例: </P>/ B6 Y$ K/ E' s6 i' ^
<><FONT color=#0000ff>#include <STDLIB.H>
9 `: O- t; h. q$ @#include <STDIO.H></FONT></P>8 \) f3 y& C8 w& o: u9 L& `
<><FONT color=#0000ff>int main( void ) % r/ V" ~& q2 |# H+ K
{ % ~! l- B( a: M9 f4 e
unsigned long lnumber = 3123456789L;
6 B* M4 }# H, N" y' g( jchar string[25]; </FONT></P>2 Q- I% ^: `6 o: x4 I3 j% r8 G( g2 |  g; g
<><FONT color=#0000ff>ultoa(lnumber,string,10);
# B6 ~" S4 |0 ?" }9 y% H7 y& oprintf("string = %s unsigned long = %lu\n",string,lnumber); </FONT></P>+ ]# ?6 e( x( |' y
<><FONT color=#0000ff>return 0;
! ]7 d. U7 \& I( v9 N* F4 @}
+ Q- d- f, }5 |+ n* ^3 `</FONT>( W- m; C  w0 N% ]( T0 B5 j+ ^. c
9 i- V) l) k* E6 [. F' w
</P>
4 |% E, X7 B4 x* z6 ~9 z<><FONT color=#ff0000>函数名: ungetc </FONT>: r: Z8 w1 P) `4 N( w3 b
功 能: 把一个字符退回到输入流中
" [; N5 \# J  x' ], g6 Q, r用 法: int ungetc(char c, FILE *stream);
, \6 P, A' Z7 i" T- m& {7 K程序例: </P>
; N. e1 o0 a* T# E( D( O! c7 j! k<><FONT color=#0000ff>#include <STDIO.H>8 a8 D: ]( V3 k* M' l- z
#include <CTYPE.H></FONT></P>9 r8 L/ R" [, Z# n) I8 k. Z
<><FONT color=#0000ff>int main( void )
+ f" a- }* W. K: h6 q3 g: W{ 8 G: U  x, P, f' a8 }5 T
int i=0; & s& q. y" S7 t6 o7 y
char ch; </FONT></P>, W1 C0 R9 ~. s
<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P># r2 e: U; l  X0 z& o0 ]
<><FONT color=#0000ff>/* read chars until non digit or EOF */ 3 w& ^! \; [! m# E8 T% @! m6 K
while((ch = getchar()) != EOF &amp;&amp; isdigit(ch)) 9 F2 {. b* r' s- j* r3 X
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>
$ J' |6 [& ^, J- i3 S2 b' T" m" e<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */ 4 y- p, m; g" E# f) [2 v4 J1 y
if (ch != EOF)
# l4 I: ~4 d3 ^* b$ {ungetc(ch, stdin); </FONT></P>/ }% `% F8 T3 Z
<><FONT color=#0000ff>printf("i = %d, next char in buffer = %c\n", i, getchar());
8 b$ l  D7 j7 o* h; M. preturn 0;
& w2 |; Z3 t1 F: {) v$ u} </FONT>
! J/ l$ e# ]' o0 N4 r, C) g
$ W4 ]! _3 K& X) [" }( A! A5 H9 h9 l
' F' d7 W! z0 S</P>) ?' W3 R- K- R( B9 H% e
<><FONT color=#ff0000>函数名: ungetch </FONT>3 n3 E6 C0 e- m' f6 p, L$ X+ k( v
功 能: 把一个字符退回到键盘缓冲区中   T& [, i* p5 [. n# \- N
用 法: int ungetch(int c);
2 U. v; Z( d3 A: R! ]) e程序例: </P>
' x! U; F+ J$ s1 H2 z<><FONT color=#0000ff>#include <STDIO.H>2 h. [5 e. C# G: v+ J; K
#include <CTYPE.H>" G, Y$ z+ ^  g# f' L
#include <CONIO.H></FONT></P>$ |) g. G. h/ q& o* m: G
<><FONT color=#0000ff>int main( void )
% O% [5 X+ E: {/ L& f* i' @  P{   n1 [. t  n* ?( \/ W# ]4 v  n
int i=0; # Y" G3 F- s% P) S( O
char ch; </FONT></P>
9 e, R& L# ^8 E4 W! O<><FONT color=#0000ff>puts("Input an integer followed by a char:"); </FONT></P>
, {2 y( K0 O: X+ Q<><FONT color=#0000ff>/* read chars until non digit or EOF */
) e1 P7 b1 ]% Y+ l5 Z: @while((ch = getche()) != EOF &amp;&amp; isdigit(ch)) % J9 w3 b$ e# |0 A) o
i = 10 * i + ch - 48; /* convert ASCII into int value */ </FONT></P>: u+ K: y! H, r% N5 m
<><FONT color=#0000ff>/* if non digit char was read, push it back into input buffer */
$ n1 G4 C0 @! y" R4 b6 K# Aif (ch != EOF)
9 f, O* w6 y$ r2 hungetch(ch); </FONT></P>
9 o5 p$ w/ V* _3 E4 s<><FONT color=#0000ff>printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
/ K9 D3 |+ _. ~- F/ }- M- xreturn 0;
- ^  w/ I# P0 F1 m$ p, J}
; h& f' G+ {9 b1 l) K! ^4 ~4 |) |8 R

- n- m3 C4 O- j</FONT></P>% a$ T' U) A5 K5 M7 a4 [- |6 n/ g. e
<><FONT color=#ff0000>函数名: unixtodos </FONT>
" u& Y1 i# Y3 n功 能: 把日期和时间转换成DOS格式 - U$ o" W* r: N$ Z; j. s& o9 u
用 法: void unixtodos(long utime, struct date *dateptr, 3 B4 V  Z8 ^4 Z5 I
struct time *timeptr);
( Z: @, P' D; Q8 \9 Q程序例: </P>8 [5 q( X% R" r0 A3 A& I
<><FONT color=#0000ff>#include <STDIO.H>
! s6 s6 E0 I" W/ K#include <DOS.H></FONT></P>
6 m, K2 o) @8 k3 ~& B$ }<><FONT color=#0000ff>char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
. H; d2 N& ^8 d) [) B: A2 l3 q& O"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; </FONT></P>6 g' c8 L8 P- u) O9 i) v# S; Q
<><FONT color=#0000ff>#define SECONDS_PER_DAY 86400L /* the number of seconds in one day */ </FONT></P>0 K8 L( v" Y1 n- j
<><FONT color=#0000ff>struct date dt; 6 Z7 y9 S2 H0 c% G0 j
struct time tm; </FONT></P>9 }( U7 W8 ^# R- ?" Y
<><FONT color=#0000ff>int main(void) 8 S1 p  [% ?$ H, ~7 |8 t; T3 E3 p' c
{ $ f$ c5 @: y5 {$ m3 t  n
unsigned long val; </FONT></P>( |& s) W9 \  Q7 E
<><FONT color=#0000ff>/* get today's date and time */ 3 g- ]. a, _3 ~0 O4 [$ K' _
getdate(&amp;dt);
- x# I8 Y0 ?- e' y1 B: B  O. Rgettime(&amp;tm);
& [6 N* S# t+ \2 |) e+ Q  }printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year); </FONT></P>. Z) e* X& J; V+ x
<><FONT color=#0000ff>/* convert date and time to unix format (number of seconds since Jan 1, 1970 */ . ?; ]& }1 {0 Z0 S
val = dostounix(&amp;dt, &amp;tm);
+ g: C5 o' h3 _; `/* subtract 42 days worth of seconds */ * T' k7 U; v: n( m
val -= (SECONDS_PER_DAY * 42); </FONT></P>& J0 P- G. n. n9 i5 o6 i
<><FONT color=#0000ff>/* convert back to dos time and date */ / p: G" T. q2 I* o. p
unixtodos(val, &amp;dt, &amp;tm); " p% R: U' x2 [- U) y! E& a; w
printf("42 days ago it was %d %s %d\n",
- F2 s. h( ]5 t2 F4 D3 X5 m  q7 @dt.da_day, month[dt.da_mon], dt.da_year); 1 B$ B) o7 }( y! J. a4 X; W9 f7 e
return 0;
$ h  D* o5 ]  P  v}   M# ?; |" V- _3 z" w  U, V  ]

2 k2 w$ Z$ _3 t# W5 }* ~& d" Z0 \7 M) w5 i0 P9 c# T0 U+ W9 ?
</FONT></P>3 W+ E: W. }' G2 N: l! y
<><FONT color=#ff0000>函数名: unlink </FONT>
) w) k- C+ |! K/ S功 能: 删掉一个文件
& F2 j; m; F0 }% i用 法: int unlink(char *filename); $ s7 {5 I0 B* Q' K/ X2 t
程序例: </P>& B& F. t' a5 X& \  |
<><FONT color=#0000ff>#include <STDIO.H>! ~1 N; i* c# d! g' G* F9 O8 g, u4 _) N
#include <IO.H></FONT></P>
6 w* x# R' S( S6 ^' l<P><FONT color=#0000ff>int main(void) . ^* _5 m% a6 C# f
{
' Y" e0 a9 q  d, I1 fFILE *fp = fopen("junk.jnk","w"); * _' H2 m$ \! y' j( E9 [
int status; </FONT></P>
8 c) t' f4 x% N% ^2 C# I; O<P><FONT color=#0000ff>fprintf(fp,"junk"); </FONT></P>
' _7 M( Q% u4 {# d( `<P><FONT color=#0000ff>status = access("junk.jnk",0);
7 q+ t+ u5 I; ?4 d3 x. iif (status == 0) 9 Y, O; s: N' x: ^. J1 x- p7 J
printf("File exists\n"); 9 x: q" r$ V; Q- D
else
8 @0 X% D9 [' ?. a4 S0 oprintf("File doesn't exist\n"); </FONT></P>
* f$ X3 l) d) L7 W3 i4 `8 [8 a<P><FONT color=#0000ff>fclose(fp);
; v' r4 R  J  g' c; E- n1 Funlink("junk.jnk"); + n9 n9 ~' Y, ~% ?# {
status = access("junk.jnk",0); + i- ^1 E4 V) U* x" I+ J; B
if (status == 0)
% |/ Y& V( i' o4 Y/ i. V& s' ^  D5 c* bprintf("File exists\n");
+ ~+ Q2 T( d2 G% x" B# Z( velse
8 Z. U3 \7 H  b$ M6 i7 bprintf("File doesn't exist\n");
& v' _' u4 [% |, |8 K) ?</FONT></P>
  v5 O' J1 t  V1 h<P><FONT color=#0000ff>return 0; ( M( l" M* A# w, Z, b" z. C
}
: H4 \' q3 f7 _. G1 N9 t! V. D
, D5 X4 G# g# u# ]: P+ X# R! f</FONT>' \) b6 I' l1 Q" i  W& W
</P>
1 {2 i, {; @) M6 f+ K. F8 E<P><FONT color=#0000ff>函数名: unlock </FONT>; W  c4 [! h9 k9 |
功 能: 解除文件共享锁
8 n/ R9 t1 y2 ~) V) Z用 法: int unlock(int handle, long offset, long length);
; z9 x( g" r; g1 t5 g6 A4 {1 S程序例: </P>, y8 Q. `* G. J  d. K
<P><FONT color=#0000ff>#include <IO.H>
, G8 d8 j0 }0 A4 j. V! h) Z#include <FCNTL.H>1 K0 Q* [! k" z/ i8 i& F1 Q& B
#include <SYS\STAT.H>
8 r# Y7 A9 D+ b: R$ s+ p5 n% L#include <PROCESS.H>
# v5 Q  w/ G& c) p) V$ V; ]* g#include <SHARE.H>2 e* M7 o4 e- C4 w$ e  e2 s& g' ?
#include <STDIO.H></FONT></P>
5 [5 H# B# X4 o<P><FONT color=#0000ff>int main(void)
# l: i: {8 y! I% b{ * F6 N3 e' [$ o' v& ?
int handle, status;
4 V) k" [+ T2 L+ Blong length; </FONT></P>0 ]' x) ]# |" g% J4 S
<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>- G1 I4 W8 C6 d' Y
<P><FONT color=#0000ff>if (handle &lt; 0)
  B0 ?" j3 g# d6 I9 {4 t{
9 E6 `1 A# S2 ^8 nprintf("sopen failed\n"); + @1 k9 ^" s2 h! z  Z8 Q
exit(1); 7 x3 W$ L; c& d2 O
} </FONT></P>
" j  O# D/ H' L9 v* @<P><FONT color=#0000ff>length = filelength(handle);
2 O0 u4 {  @& J5 W: z# Estatus = lock(handle,0L,length/2); </FONT></P>6 \* L4 D- L* m0 x3 L- m5 g5 M5 e
<P><FONT color=#0000ff>if (status == 0) $ C/ Z) e8 l" h  Z7 ?/ e
printf("lock succeeded\n");
8 Y: k4 ^8 H: H2 Belse
2 h* S+ C8 |% C) W' [3 l; Rprintf("lock failed\n"); </FONT></P>! J8 I5 E* x8 [0 D9 D: A
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>
2 a7 C# R6 f' Z8 Q+ ?( o3 e0 D7 g1 @<P><FONT color=#0000ff>if (status == 0)
  q7 g3 f) f% W: E! q1 {printf("unlock succeeded\n"); + v/ L+ D5 h5 v1 h
else
- K/ X) f. V: Q# e1 X7 ?printf("unlock failed\n"); </FONT></P>) Z( e9 w0 [# w2 ~) g2 N& N
<P><FONT color=#0000ff>close(handle);
& @4 [6 b8 A) ]2 T; Q5 I% T$ ^return 0;
- y3 L! o) V( k7 A! S} </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-7-21 02:51 , Processed in 0.378870 second(s), 52 queries .

回顶部