windows平台沒有提供的兩個字串操作函數。

來源:互聯網
上載者:User

標籤:strdup   setenv   putenv   

在看一些開原始碼時,經常看到一些字串操作函數,這些函數在Linux平台下是有的,但在windows平台上,MS沒有提供。因此在軟體中不得不自己實現.常見的庫函數有:

//獲得當前字元的一個拷貝,由外部釋放記憶體。char *strdup(const char *src)  {    int             len;    char           *dst;    len = strlen(src) + 1;    if ((dst = (char *) malloc(len)) == NULL)        return (NULL);    strcpy(dst, src);    return (dst);}//設定環境變數int setenv(const char *name, const char *value, int overwrite)  {    char           *cp;    int             ret;    if (overwrite == 0) {        if (getenv(name))            return 0;    }    cp = (char *) malloc(strlen(name) + strlen(value) + 2);    if (cp == NULL)        return -1;    sprintf(cp, "%s=%s", name, value);    ret = putenv(cp);#ifdef WIN32    free(cp);#endif    return ret;}

windows平台沒有提供的兩個字串操作函數。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.