首页 > 学院 > 开发设计 > 正文

C语言库函数(U类字母)

2019-11-17 05:43:00
字体:
来源:转载
供稿:网友
     
函数名: 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; 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表