函數名: strdup
頭檔:<string.h>
函數原型: char *strdup(const char *str);
功能: 將字串複製到新建立的空間,該函數會先用malloc()配置與參數str字串相同的空間大小,然後將參數str字串的內容複製到該記憶體位址,然後把該位址傳回。該位址最後可以利用free()來釋放。
參數: char *str 為要複製的字串
傳回值: 傳回一字串指針,指向複製後的新字串位址。若返回NULL表示記憶體不足。
注意: 不是標準函式庫函數,只能在windows下(VC、MinGW等)使用,Linux GCC需要自己定義。
程式範例:將字串string複製到dup_str中,並將結果輸出
#include<string.h>#include<stdio.h>#include<stdlib.h>intmain(void){char*dup_str,*string=www.dotcpp.com;dup_str=strdup(string);printf(%s n,dup_str);free(dup_str);return0;}
運行結果:
www.dotcpp.com