#include, ,,及C语言头文件

时间:2022-09-27 15:55:31

C语言中#include <malloc.h>有何作用?何时要用?

动态存储分配函数头文件,当对内存区进行操作时,调用相关函数.ANSI标准建议使用stdlib.h头文件,但许多C编译要求用malloc.h,使用时应查阅有关手册.

我从网上拷了一个程序下来,发现里面有很多类似这样的包含语句:
#include <sys/types.h>
斜杠前面的应该是文件夹吧?可是那个程序只有一个文件,并没有这样的文件夹。
那些头文件是不是c的函数库本来就带有的呢?

回答:

是unix/linux系统的头文件

这些文件夹在环境变量中关于 "include "的路径下,你到那个目录看一眼就明白了。

请问,#include<types.h> 和#inlcude<sys/types.h>有什么区别?

回答: 指定文件路径,不使用默认路径下的文件或为默认路径下不存在该文件时指定文件路径。  

不要乱说  
   
第二中写法是指使用缺省include目录下sys子目录中的types.h,即指出了路径  
缺省目录是指在编译器中指定的目录  
使用#include   <xxx.h>  
只搜索缺省目录  
使用#include   "xxx.h"  
搜索当前工作目录和缺省目录

#include <stdlib.h>的含义是什么
stdlib 头文件里包含了的C语言标准库函数的定义
stdlib.h里面定义了五种类型、一些宏和通用工具函数类型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t;宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等;常用的函数如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、 srand()、exit()等等。 具体的内容你自己可以打开编译器的include目录里面的stdlib.h头文件看看。

string.h 到底是什么头文件呢?

在程序中加入#include "string.h"就可以使用这个头文件里包含的库函数,而这些函数都是处理字符串的.

这个头文件包含了一些处理字符串的函数。这些函数很多都以“str”开头,例如strcpy,strcat等,也有些mem开头的,如memcpy,memmset等。你可以直接到include文件夹里打开string.h文件看看你用到的函数是否在里面。



math.h常用函数

int  abs   (int x);
double  acos  (double x);
double  asin  (double x);
double  atan  (double x);
double  atan2 (double y, double x);
double  atof  (const char *s);
double  ceil  (double x);
double  cos   (double x);
double  cosh  (double x);
double  exp   (double x);
double  fabs  (double x);
double  floor (double x);
double  fmod  (double x, double y);
double  frexp (double x, int *exponent);
long  labs  (long x);
double  ldexp (double x, int exponent);
double  log   (double x);
double  log10 (double x);
double  modf  (double x, double *ipart);
double  pow   (double x, double y);
double  sin   (double x);
double  sinh  (double x);
double  sqrt  (double x);
double  tan   (double x);
double  tanh  (double x);


stdio.h常用函数包括
int       fclose   (FILE *stream);
int       fflush   (FILE *stream);
int       fgetc    (FILE *stream);
int       fgetpos  (FILE *stream, fpos_t *pos);
char    * fgets    (char *s, int n, FILE *stream);
FILE    * fopen    (const char *path, const char *mode);
int       fprintf  (FILE *stream, const char *format, ...);
int       fputc    (int c, FILE *stream);
int       fputs    (const char *s, FILE *stream);
size_t    fread    (void *ptr, size_t size, size_t n, FILE *stream);
FILE    * freopen  (const char *path, const char *mode,
                          FILE *stream);
int       fscanf   (FILE *stream, const char *format, ...);
int       fseek    (FILE *stream, long offset, int whence);
int       fsetpos  (FILE *stream, const fpos_t *pos);
long      ftell    (FILE *stream);
size_t    fwrite   (const void *ptr, size_t size, size_t n,
                          FILE *stream);
int       printf   (const char *format, ...);
int       puts     (const char *s);
int       rename   (const char *oldname, const char *newname);
void      rewind   (FILE *stream);
int       scanf    (const char *format, ...);


stdlib.h常用函数包括

 stdlib 头文件里包含了C、C++语言的一些函数

  该文件包含了的C语言标准库函数的定义

  stdlib.h里面定义了五种类型、一些宏和通用工具函数。 类型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t; 宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等; 常用的函数如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。 具体的内容你自己可以打开编译器的include目录里面的stdlib.h头文件看看
int      abs    (int x);
int      atexit (atexit_t func);
double   atof   (const char *s);
int      atoi   (const char *s);
long     atol   (const char *s);
void   * bsearch(const void *key, const void *base,
                       size_t nelem, size_t width,
                       int  (*fcmp)());
void   * calloc (size_t nitems, size_t size);
div_t    div    (int numer, int denom);
void     exit   (int status);
void     free   (void *block);
char   * getenv (const char *name);
long     labs   (long x);
ldiv_t   ldiv   (long numer, long denom);
void   * malloc (size_t size);
void     qsort  (void *base, size_t nelem, size_t width,
                       int  (*fcmp)());
int      rand   (void);
void   * realloc(void *block, size_t size);
void     srand  (unsigned seed);
double   strtod (const char *s, char **endptr);
long     strtol (const char *s, char **endptr, int radix);
unsigned long  strtoul (const char *s, char **endptr, int radix);
int      system (const char *command);
max(a,b)        (((a) > (b)) ? (a) : (b))
min(a,b)        (((a) < (b)) ? (a) : (b))

random(num)     (rand() % (num))
randomize()     srand((unsigned)time(NULL))


string.h常用函数包括:
char * stpcpy (char *dest, const char *src);
char * strcat (char *dest, const char *src);
char * strchr (const char *s, int c);
int   strcmp (const char *s1, const char *s2);
char * strcpy (char *dest, const char *src);
size_t   strcspn (const char *s1, const char *s2);
char * strdup (const char *s);
char * strerror(int errnum);

 

conio.h不是C标准库中的头文件。
  conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等等。
  包含的函数
  cgets(char *);
  cprintf(const char *, ...);
  cputs(const char *);
  cscanf(const char *, ...);
  inp(unsigned short);
  inpw(unsigned short);
  getch(void);
  getche(void);
  kbhit(void);
  outp(unsigned short, int);
  outpw(unsigned short, unsigned short);
  putch(int);
  ungetch(int);
  void _Cdecl clreol (void);
  void _Cdecl clrscr (void);
  void _Cdecl delline (void);
  int _Cdecl gettext (int left, int top, int right, int bottom,
  void *destin);
  void _Cdecl gettextinfo (struct text_info *r);
  void _Cdecl gotoxy (int x, int y);
  void _Cdecl highvideo (void);
  void _Cdecl insline (void);
  void _Cdecl lowvideo (void);
  int _Cdecl movetext (int left, int top, int right, int bottom,
  int destleft, int desttop);
  void _Cdecl normvideo (void);
  int _Cdecl puttext (int left, int top, int right, int bottom,
  void *source);
  void _Cdecl textattr (int newattr);
  void _Cdecl textbackground (int newcolor);
  void _Cdecl textcolor (int newcolor);
  void _Cdecl textmode (int newmode);
  int _Cdecl wherex (void);
  int _Cdecl wherey (void);
  void _Cdecl window (int left, int top, int right, int bottom);
  har *_Cdecl cgets (char *str);
  int _Cdecl cprintf (const char *format, ...);
  int _Cdecl cputs (const char *str);
  int _Cdecl cscanf (const char *format, ...);
  int _Cdecl getch (void);
  int _Cdecl getche (void);
  char *_Cdecl getpass (const char *prompt);
  int _Cdecl kbhit (void);
  int _Cdecl putch (int c);
  int _Cdecl ungetch (int ch);



转自:http://hi.baidu.com/imheaventian/blog/item/2dc2a7375dc8123c0a55a929.html