当前位置: 首页 > 图文教程 > 开发语言 > C/C++ > C/C++:小编谈C语言函数那些事(33)

C/C++
C和C++的特点
pragma 预处理指令详解
C++ 中什么是内联函数
C/C++没有数组
C/C++返回内部静态成员的陷阱
学好C/C++的办法
C/C++中时间函数的介绍
c/c++混合编程
c/C++内存分配
[转]浅谈C语言学习与C++语言学习的关系
托管C++
windows进程中的内存结构
C++学习重点分析
浅析scanf()函数中%[]格式控制符
C/C++:一个跨平台的 C++ 内存泄漏检测器
C/C++:C/C++时间函数使用方法
C/C++:线程冲突你了解多少?
C/C++:小编浅谈函数宏应用优缺点
C/C++:小编谈C语言函数那些事(1)
C/C++:小编谈C语言函数那些事(2)

C/C++:小编谈C语言函数那些事(33)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 112 ::
收藏到网摘: n/a

C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。

 

1.  ungetc函数

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:");

   while((ch = getchar()) != EOF && isdigit(ch))

      i = 10 * i + ch - 48;

   if (ch != EOF)

      ungetc(ch, stdin);

   printf("i = %d, next char in buffer = %c\n", i, getchar());

   return 0;

}

 2. ungetch函数

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:");

   while((ch = getche()) != EOF && isdigit(ch))

      i = 10 * i + ch - 48;

   if (ch != EOF)

      ungetch(ch);

   printf("\n\ni = %d, next char in buffer = %c\n", i, getch());

   return 0;

}

 

 

3.  unixtodos函数

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;

   getdate(&dt);

   gettime(&tm);

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

   val = dostounix(&dt, &tm);

   val -= (SECONDS_PER_DAY * 42);

   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;

}

4. unlink函数

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;

}