C语言函数.docx

上传人:b****7 文档编号:25432456 上传时间:2023-06-08 格式:DOCX 页数:14 大小:16.18KB
下载 相关 举报
C语言函数.docx_第1页
第1页 / 共14页
C语言函数.docx_第2页
第2页 / 共14页
C语言函数.docx_第3页
第3页 / 共14页
C语言函数.docx_第4页
第4页 / 共14页
C语言函数.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

C语言函数.docx

《C语言函数.docx》由会员分享,可在线阅读,更多相关《C语言函数.docx(14页珍藏版)》请在冰豆网上搜索。

C语言函数.docx

C语言函数

函数名:

ultoa

功能:

转换一个无符号长整型数为字符串

用法:

char*ultoa(unsignedlongvalue,char*string,intradix);

程序例:

#include

#include

intmain(void)

{

unsignedlonglnumber=3123456789L;

charstring[25];

ultoa(lnumber,string,10);

printf("string=%sunsignedlong=%lu\n",string,lnumber);

return0;

}

函数名:

ungetc

功能:

把一个字符退回到输入流中

用法:

intungetc(charc,FILE*stream);

程序例:

#include

#include

intmain(void)

{

inti=0;

charch;

puts("Inputanintegerfollowedbyachar:

");

/*readcharsuntilnondigitorEOF*/

while((ch=getchar())!

=EOF&&isdigit(ch))

i=10*i+ch-48;/*convertASCIIintointvalue*/

/*ifnondigitcharwasread,pushitbackintoinputbuffer*/

if(ch!

=EOF)

ungetc(ch,stdin);

printf("i=%d,nextcharinbuffer=%c\n",i,getchar());

return0;

}

函数名:

ungetch

功能:

把一个字符退回到键盘缓冲区中

用法:

intungetch(intc);

程序例:

#include

#include

#include

intmain(void)

{

inti=0;

charch;

puts("Inputanintegerfollowedbyachar:

");

/*readcharsuntilnondigitorEOF*/

while((ch=getche())!

=EOF&&isdigit(ch))

i=10*i+ch-48;/*convertASCIIintointvalue*/

/*ifnondigitcharwasread,pushitbackintoinputbuffer*/

if(ch!

=EOF)

ungetch(ch);

printf("\n\ni=%d,nextcharinbuffer=%c\n",i,getch());

return0;

}

函数名:

unixtodos

功能:

把日期和时间转换成DOS格式

用法:

voidunixtodos(longutime,structdate*dateptr,

structtime*timeptr);

程序例:

#include

#include

char*month[]={"---","Jan","Feb","Mar","Apr","May","Jun",

"Jul","Aug","Sep","Oct","Nov","Dec"};

#defineSECONDS_PER_DAY86400L/*thenumberofsecondsinoneday*/

structdatedt;

structtimetm;

intmain(void)

{

unsignedlongval;

/*gettoday'sdateandtime*/

getdate(&dt);

gettime(&tm);

printf("todayis%d%s%d\n",dt.da_day,month[dt.da_mon],dt.da_year);

/*convertdateandtimetounixformat(numberofsecondssinceJan1,1970*/

val=dostounix(&dt,&tm);

/*subtract42daysworthofseconds*/

val-=(SECONDS_PER_DAY*42);

/*convertbacktodostimeanddate*/

unixtodos(val,&dt,&tm);

printf("42daysagoitwas%d%s%d\n",

dt.da_day,month[dt.da_mon],dt.da_year);

return0;

}

函数名:

unlink

功能:

删掉一个文件

用法:

intunlink(char*filename);

程序例:

#include

#include

intmain(void)

{

FILE*fp=fopen("junk.jnk","w");

intstatus;

fprintf(fp,"junk");

status=access("junk.jnk",0);

if(status==0)

printf("Fileexists\n");

else

printf("Filedoesn'texist\n");

fclose(fp);

unlink("junk.jnk");

status=access("junk.jnk",0);

if(status==0)

printf("Fileexists\n");

else

printf("Filedoesn'texist\n");

return0;

}

函数名:

unlock

功能:

解除文件共享锁

用法:

intunlock(inthandle,longoffset,longlength);

程序例:

#include

#include

#include

#include

#include

#include

intmain(void)

{

inthandle,status;

longlength;

handle=sopen("c:

\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD);

if(handle<0)

{

printf("sopenfailed\n");

exit

(1);

}

length=filelength(handle);

status=lock(handle,0L,length/2);

if(status==0)

printf("locksucceeded\n");

else

printf("lockfailed\n");

status=unlock(handle,0L,length/2);

if(status==0)

printf("unlocksucceeded\n");

else

printf("unlockfailed\n");

close(handle);

return0;

}

 

函数名:

vfprintf

功能:

送格式化输出到一流中

用法:

intvfprintf(FILE*stream,char*format,va_listparam);

程序例:

#include

#include

#include

FILE*fp;

intvfpf(char*fmt,...)

{

va_listargptr;

intcnt;

va_start(argptr,fmt);

cnt=vfprintf(fp,fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber=30;

floatfnumber=90.0;

charstring[4]="abc";

fp=tmpfile();

if(fp==NULL)

{

perror("tmpfile()call");

exit

(1);

}

vfpf("%d%f%s",inumber,fnumber,string);

rewind(fp);

fscanf(fp,"%d%f%s",&inumber,&fnumber,string);

printf("%d%f%s\n",inumber,fnumber,string);

fclose(fp);

return0;

}

函数名:

vfscanf

功能:

从流中执行格式化输入

用法:

intvfscanf(FILE*stream,char*format,va_listparam);

程序例:

#include

#include

#include

FILE*fp;

intvfsf(char*fmt,...)

{

va_listargptr;

intcnt;

va_start(argptr,fmt);

cnt=vfscanf(fp,fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber=30;

floatfnumber=90.0;

charstring[4]="abc";

fp=tmpfile();

if(fp==NULL)

{

perror("tmpfile()call");

exit

(1);

}

fprintf(fp,"%d%f%s\n",inumber,fnumber,string);

rewind(fp);

vfsf("%d%f%s",&inumber,&fnumber,string);

printf("%d%f%s\n",inumber,fnumber,string);

fclose(fp);

return0;

}

函数名:

vprintf

功能:

送格式化输出到stdout中

用法:

intvprintf(char*format,va_listparam);

程序例:

#include

#include

intvpf(char*fmt,...)

{

va_listargptr;

intcnt;

va_start(argptr,format);

cnt=vprintf(fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber=30;

floatfnumber=90.0;

char*string="abc";

vpf("%d%f%s\n",inumber,fnumber,string);

return0;

}

函数名:

vscanf

功能:

从stdin中执行格式化输入

用法:

intvscanf(char*format,va_listparam);

程序例:

#include

#include

#include

intvscnf(char*fmt,...)

{

va_listargptr;

intcnt;

printf("Enteraninteger,afloat,andastring(e.g.i,f,s,)\n");

va_start(argptr,fmt);

cnt=vscanf(fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber;

floatfnumber;

charstring[80];

vscnf("%d,%f,%s",&inumber,&fnumber,string);

printf("%d%f%s\n",inumber,fnumber,string);

return0;

}

函数名:

vsprintf

功能:

送格式化输出到串中

用法:

intvsprintf(char*string,char*format,va_listparam);

程序例:

#include

#include

#include

charbuffer[80];

intvspf(char*fmt,...)

{

va_listargptr;

intcnt;

va_start(argptr,fmt);

cnt=vsprintf(buffer,fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber=30;

floatfnumber=90.0;

charstring[4]="abc";

vspf("%d%f%s",inumber,fnumber,string);

printf("%s\n",buffer);

return0;

}

函数名:

vsscanf

功能:

从流中执行格式化输入

用法:

intvsscanf(char*s,char*format,va_listparam);

程序例:

#include

#include

#include

charbuffer[80]="3090.0abc";

intvssf(char*fmt,...)

{

va_listargptr;

intcnt;

fflush(stdin);

va_start(argptr,fmt);

cnt=vsscanf(buffer,fmt,argptr);

va_end(argptr);

return(cnt);

}

intmain(void)

{

intinumber;

floatfnumber;

charstring[80];

vssf("%d%f%s",&inumber,&fnumber,string);

printf("%d%f%s\n",inumber,fnumber,string);

return0;

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1