C++ 函数返回char*
生活随笔
收集整理的這篇文章主要介紹了
C++ 函数返回char*
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在函數內建立的局部變量在函數結束后會被銷毀,所以如何從函數返回函數內新建的char*是一個問題
看一個例子:
char* get_char_1(){string s = "abc";return (char*)s.c_str(); }int main(){char* temp = get_char_1();cout << temp;return 0; }此時什么也不輸出
解決方法:在函數內新建一個static char數組,這樣函數結束數組也不會被銷毀
char* get_char_2(){string s = "abc";static char a[20];strcpy(a, s.c_str());return a; }int main(){char* temp = get_char_2();cout << temp;return 0; }?
總結
以上是生活随笔為你收集整理的C++ 函数返回char*的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 绘制时频图 plt.spe
- 下一篇: C++初始化vector<vector<