当前位置: 首页 > 图文教程 > 开发语言 > C/C++ > C/C++:小编谈C语言函数那些事(33)
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
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;
}
评论 (0) All