函数名:
ultoa 功 能: 转换一个无符号长整型数为字符串 用 法: char *ultoa(unsigned long
value, char *string, int radix); 程序例: #include <stdlib.h> #include
<stdio.h> int main( void ) { unsigned long lnumber
= 3123456789L; char string[25]; ultoa(lnumber,string,10);
printf("string = %s unsigned long = %lu\n",string,lnumber);
return 0; } 函数名: ungetc
功 能: 把一个字符退回到输入流中 用 法: int ungetc(char c, FILE *stream); 程序例:
#include <stdio.h> #include <ctype.h> int main( void ) {
int i=0; char ch; puts("Input an integer followed
by a char:"); /* read chars until non digit or EOF */
while((ch = getchar()) != EOF && isdigit(ch))
i = 10 * i + ch - 48; /* convert ASCII into int value */ /* if
non digit char was read, push it back into input buffer */ if
(ch != EOF) ungetc(ch, stdin);
printf("i = %d, next char in buffer = %c\n", i, getchar()); return
0; } 函数名: ungetch 功 能: 把一个字符退回到键盘缓冲区中
用 法: int ungetch(int c); 程序例: #include <stdio.h> #include
<ctype.h> #include <conio.h> int main( void ) {
int i=0; char ch; puts("Input an integer followed
by a char:"); /* read chars until non digit or EOF */
while((ch = getche()) != EOF && isdigit(ch))
i = 10 * i + ch - 48; /* convert ASCII into int value */ /* if
non digit char was read, push it back into input buffer */ if
(ch != EOF) ungetch(ch); printf("\n\ni
= %d, next char in buffer = %c\n", i, getch()); return 0; }
函数名: unixtodos 功 能: 把日期和时间转换成DOS格式
用 法: void unixtodos(long utime, struct date *dateptr,
struct time *timeptr); 程序例: #include <stdio.h> #include <dos.h>
char *month[] = {"---", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; #define SECONDS_PER_DAY 86400L
/* the number of seconds in one day */ struct date dt; struct time tm;
int main(void) { unsigned long val; /* get today's
date and time */ getdate(&dt); gettime(&tm);
printf("today is %d %s %d\n", dt.da_day, month[dt.da_mon], dt.da_year);
/* convert date and time to unix format (number of seconds since Jan 1, 1970
*/ val = dostounix(&dt, &tm); /* subtract 42 days
worth of seconds */ val -= (SECONDS_PER_DAY * 42); /* convert
back to dos time and date */ unixtodos(val, &dt, &tm);
printf("42 days ago it was %d %s %d\n",
dt.da_day, month[dt.da_mon], dt.da_year); return 0; }
函数名: unlink 功 能: 删掉一个文件 用 法: int
unlink(char *filename); 程序例: #include <stdio.h> #include <io.h>
int main(void) { FILE *fp = fopen("junk.jnk","w");
int status; fprintf(fp,"junk"); status = access("junk.jnk",0);
if (status == 0) printf("File
exists\n"); else printf("File
doesn't exist\n"); fclose(fp); unlink("junk.jnk");
status = access("junk.jnk",0); if (status ==
0) printf("File exists\n");
else printf("File doesn't exist\n");
return 0; } 函数名: unlock
功 能: 解除文件共享锁 用 法: int unlock(int handle, long offset, long
length); 程序例: #include <io.h> #include <fcntl.h> #include
<sys\stat.h> #include <process.h> #include <share.h> #include
<stdio.h> int main(void) { int handle, status;
long length; handle = sopen("c:\\autoexec.bat",O_RDONLY,SH_DENYNO,S_IREAD);
if (handle < 0) {
printf("sopen failed\n"); exit(1);
} length = filelength(handle); status = lock(handle,0L,length/2);
if (status == 0) printf("lock
succeeded\n"); else printf("lock
failed\n"); status = unlock(handle,0L,length/2);
if (status == 0) printf("unlock succeeded\n");
else printf("unlock failed\n");
close(handle); return 0; }
返回目录 |