1. 程式人生 > >stdlib.h標頭檔案下的常用函式

stdlib.h標頭檔案下的常用函式

atof()將字串轉換成浮點數的函式
原形:double atof(const char *s)
功能:把s所指向的字串轉換成double型別。
   s格式為:符號 數字.數字 E符號 數字
返回值:字串的轉換值。
標頭檔案:math.h、stdlib.h

atoi()將字串轉換成整型數的函式
原形:int atoi(const char *s)
功能:把s所指向的字串轉換成int型別。
   s格式為:符號 數字
返回值:字串的轉換值。若出錯則返回0。
標頭檔案:stdlib.h

atol()將字串轉換成長整型數的函式
原形:long atol(const char *s)
功能:把s所指向的字串轉換成long int型別。
   s格式為:符號 數字
返回值:字串的轉換值。若出錯則返回0。
標頭檔案:stdlib.h
===================================================
calloc()分配記憶體函式
原形:void *calloc(size_t nitems,size_t size)
功能:在堆中分配一塊記憶體,將該記憶體的內容全部清0。
返回值:返回指向新分配記憶體的指標。空間不夠則返回NULL。
標頭檔案:stdlib.h、calloc.h
===================================================
free()釋放已分配記憶體的函式
原形:void free(void *block)
功能:釋放由calloc、malloc、realloc函式呼叫所分配的記憶體。
標頭檔案:stdlib.h、alloc.h
====================================================
gcvt()把雙精度數轉化成字串的函式
原形∶char*gcvt(value,ndigit,buf)
  其中∶double value是待轉化數
     int ndigit是轉化長度
     char *buf儲存轉化後的地址
標頭檔案∶stdlib.h
====================================================
geninterrupt()執行中斷函式
原形:void geninterrupt(int n)
呼叫方式:geninterrupt(軟中斷號)
功能:產生一個8086軟中斷
注:需先向暫存器傳遞入口資訊(用偽變數)
  例如  偽變數=要賦的值(入口資訊);
      呼叫geninterrupt()函式後得接受出口資訊
  例如  變數名=偽變數
偽變數∶Turbo C 允許使用偽變數直接訪問相應的8086暫存器。偽變數的型別有兩種。
  ① unsigned int : _AX、 _BX、 _CX、 _DX、 _CS、 _DS、 _SS、 _ES、_SP、 _BP、 _DI、 _SI
  ② unsigned char: _AL、 _AH、 _BL、 _BH、 _CL、 _CH、 _DL、 _DH
===================================================
getenv()讀取環境變數的當前值的函式
原形:char *getenv(const char *name)
用法:s=getenv("環境變數名");
   需先定義char *s;
功能:返回一給定的環境變數值,環境變數名可大寫或小寫。如果指定的變數在環境中未定義,則返回一空串。
標頭檔案:stdlib.h
====================================================
itoa()把整形數轉換為字串的函式
原形:char *itoa(int value,char *string,int radix)
功能:把value的值轉換為以NULL結束的字串,並把結果存在string中。radix是轉換的基數值,在2到36之間。分配給string的空間必須可容納返回的所有位元組(最多17位元組)。
返回值:指向string的指標
標頭檔案:stdlib.h
==================================================
_lrotl()將一個無符號長整形數左迴圈移位的函式
原形:unsigned long _lrotl(unsigned long value,int count)
功能:將value向左迴圈移動count位。
返回值:將value向左迴圈移動count位後的值。
標頭檔案:stdlib.h

_lrotr()將一個無符號長整形數右迴圈移位的函式
原形:unsigned long _lrotr(unsigned long value,int count)
功能:將value向右迴圈移動count位。
返回值:將value向右迴圈移動count位後的值。
標頭檔案:stdlib.h



ltoa()把長整形數轉換為字串的函式
原形:char *ltoa(long value,char *string,int radix)
功能:把value的值轉換為以NULL結束的字串,並把結果存在string中。radix是轉換的基數值,在2到36之間。分配給string的空間必須可容納返回的所有位元組(最多33位元組)。
返回值:指向string的指標
標頭檔案:stdlib.h

malloc()分配記憶體函式
原形:void *malloc(size_t size)
功能:從堆中分配大小為size位元組的塊。win32也適用。
返回值:返回新分配記憶體的地址,若無足夠記憶體,返回NULL。
標頭檔案:alloc.h、stdlib.h
============================================================
putenv()將字串放入當前環境中的函式
原形:int putenv(const char *name)
用法例:putenv("PATH=C:/B/TC");
功能:把字串name加到當前程式執行的環境中。當程式結束後,原環境將得到恢復。
返回值:0(成功);-1(失敗)
標頭檔案:stdlib.h
============================================================
realloc()重新分配記憶體函式
原形:void *realloc(void *block,size_t size)
   block指向用malloc、calloc或realloc已得到的記憶體。
   size是重新分配的位元組。
返回值:重分配的塊地址。若不能重分配,則返回NULL。
標頭檔案:stdlib.h
=============================================================
_rotl()將一個無符號整形數左迴圈移位的函式
原形:unsigned _rotl(unsigned value,int count)
功能:將value向左迴圈移動count位。
返回值:將value向左迴圈移動count位後的值。
標頭檔案:stdlib.h
=============================================================
_rotr()將一個無符號整形數右迴圈移位的函式
原形:unsigned _rotr(unsigned value,int count)
功能:將value向右迴圈移動count位。
返回值:將value向右迴圈移動count位後的值。
標頭檔案:stdlib.h