C語言中返回字串函式的四種實現方法

2021-07-02 15:28:33 字數 710 閱讀 4383

分類: unix/linux c/c++

2010-12-29 02:54

11954人閱讀收藏

舉報 語言func儲存

有四種方式:

1。使用堆空間,返回申請的堆位址,注意釋放

2。函式引數傳遞指標,返回該指標

3。返回函式內定義的靜態變數(共享)

4。返回全域性變數

******************以下摘自csdn******************************

其實就是要返回乙個有效的指標,尾部變數退出後就無效了。

使用分配的記憶體,位址是有效

char   *fun()

但這種方式需要注意,必須由使用將將返回的位址free掉

將位址由入參傳入

char*   fun(char*s)

這種方式呼叫都要注意給s分配的大小是足夠。

可以這樣:

char*   fun(char*s,   int   len)

return   s; }

或才使用區域性靜態變數

char*   fun()

const   char*   fun()

還有一種是使用全域性變數

char   g_s[100];

char*   fun()

同樣的,也要注意這個變數可儲存的最大空間。

C語言中返回字串函式的四種實現方法

有四種方式 1。使用堆空間,返回申請的堆位址,注意釋放 2。函式引數傳遞指標,返回該指標 3。返回函式內定義的靜態變數 共享 4。返回全域性變數 其實就是要返回乙個有效的指標,尾部變數退出後就無效了。使用分配的記憶體,位址是有效 char fun 但這種方式需要注意,必須由使用將將返回的位址free...

C語言中函式返回字串的四種方法

在討論著四種方法之前,首先要對函式有乙個簡單的認識,無論是在形實結合時,還是在return語句返回時,都有乙個拷貝的過程。你傳進來的引數是個值,自然函式在工作之前要把這個值拷貝乙份供自己使用,你傳進來的是個位址,函式也就會拷貝該位址供自己使用。同樣return返回時,如果返回乙個值,函式會將該值拷貝...

C語言中函式返回字串的四種方法

在討論著四種方法之前,首先要對函式有乙個簡單的認識,無論是在形實結合時,還是在return語句返回時,都有乙個拷貝的過程。你傳進來的引數是個值,自然函式在工作之前要把這個值拷貝乙份供自己使用,你傳進來的是個位址,函式也就會拷貝該位址供自己使用。同樣return返回時,如果返回乙個值,函式會將該值拷貝...