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

C/C++
2009年编程开发语言的使用率
C++对象模型笔记:dynamic binding
cstl -- c语言编写通用数据结构和常用算法库(模仿SGI STL)
子串匹配:不回溯算法
C++ Builder 访问 USB 口的方法
C++中二维数组的动态分配
数组和指针在编译的时候的区别
如何利用doxygen生成pdf文档
有关C++析构函数的异常(Exceptions in Destructors)
C++模板学习之函数对象之谓词
5月编程语言排行榜:D语言风采不再
一个C++类实现文件全盘搜索
C语言编程宝典之一 读书笔记
C语言嵌入式系统编程修炼(内存操作)
C++内存管理
带头结点的双循环链表
有关VA_LIST的用法
C++标准库简介(转)
一个栈类的实现(链栈)
C 引用与指针的比较

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


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

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

1.       fgetc函数

fgetc函数的功能是从流中读取字符,其用法是:int fgetc(FILE *stream); 程序例子如下:

#include <string.h>

#include <stdio.h>

#include <conio.h>

int main(void)

{

   FILE *stream;

   char string[] = "This is a test";

   char ch;

   /* open a file for update */

   stream = fopen("DUMMY.FIL", "w+");

   /* write a string into the file */

   fwrite(string, strlen(string), 1, stream);

   /* seek to the beginning of the file */

   fseek(stream, 0, SEEK_SET);

   do

   {

      /* read a char from the file */

      ch = fgetc(stream);

      /* display the character */

      putch(ch);

   } while (ch != EOF);

   fclose(stream);

   return 0;

}

2.       fgetchar函数

fgetchar函数的功能是关闭打开流,其用法是:int fgetchar(void); 程序例子如下:

#include <stdio.h>

int main(void)

{

   char ch;

   /* prompt the user for input */

   printf("Enter a character followed by \

   <Enter>: ");

   /* read the character from stdin */

   ch = fgetchar();

   /* display what was read */

   printf("The character read is: '%c'\n",

          ch);

   return 0;

}

3.       fread函数

fread函数的功能是从一个流中读数据,其用法是:int fread(void *ptr, int size, int nitems, FILE *stream); 程序例子如下:

#include <string.h>

#include <stdio.h>

int main(void)

{

   FILE *stream;

   char msg[] = "this is a test";

   char buf[20];

   if ((stream = fopen("DUMMY.FIL", "w+"))

       == NULL)

   {

      fprintf(stderr,

              "Cannot open output file.\n");

      return 1;

   }

   /* write some data to the file */

   fwrite(msg, strlen(msg)+1, 1, stream);

   /* seek to the beginning of the file */

   fseek(stream, SEEK_SET, 0);

   /* read the data and display it */

   fread(buf, strlen(msg)+1, 1, stream);

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

   fclose(stream);

   return 0;

}

 

4.       frexp函数

frexp函数 把一个双精度数分解为尾数的指数,其用法为:double frexp(double value, int *eptr);程序代码如下:

#include <math.h>

#include <stdio.h>

int main(void)

{

   double mantissa, number;

   int exponent;

   number = 8.0;

   mantissa = frexp(number, &exponent);

   printf("The number %lf is ", number);

   printf("%lf times two to the ", mantissa);

   printf("power of %d\n", exponent);

   return 0;

}