我們知道,面試中經常出現對字串的操作,看起來簡單的函式實現,其實做起來還是有點難度的,加之,是在比較緊張的氛圍下。一行漂亮的**可以讓面試官眼睛一亮。
先上寫好的**吧(給予vs2008開發的)
測試:放入main函式試試:
ok 結果成功!!!
但是發現乙個問題:子函式內部:new了乙個變數,卻沒有delete,會造成記憶體洩露,對於面試官來說,此乃大忌!!但是在子函式外面delete會引起編譯錯誤!!
改程式如下:可以傳入char*,用於存放拼接後的字串。
此程式就能正確輸出了。
咋們再來看看網上關於strcat**。注意的是:因為是面試題,所以盡量不要去呼叫c的庫函式,一般題目也會這麼要求,要不就沒意義了。
char* strcat ( char * dst , const char * src )
但是 ,我有乙個疑問:作者直接在dst後加入src,但是怎麼可以確定dst後還有空間呢???萬一沒有呢,是不是有個安全隱患????回去問問大牛師兄吧。還有就是src沒控制大小。廢話別說,執行一下就知道。
面試 字串 字串相乘
給出兩個字串的正整數,求其乘積,返回其乘積的字串的表示 public class solution 確保每個數字大小在0 9之間 int carry 0 for int i n 1 i 0 i string result boolean firstnonzero false 將陣列轉換為字串,如果第...
字串 面試
最近看書看不下去就刷面試題,決定把字串有關面試題都寫這個文章裡 1.實現乙個函式在字串中把空格替換成 20 注意是否會發生記憶體溢位 include include using namespace std void changezi char buff,int size if num 0 要考慮沒有...
c c 面試45 50之字串
45 使用庫函式將數字轉換為字串,下面是常用庫函式 1 itoa 將整型轉換為字串 2 ltoa 將長整形轉換為字串 3 gcvt 將浮點轉換為字串 46 不使用庫函式將整數轉換為字串 通過把整數的各位上的數字加上 0 轉換為char型別並存到字元陣列 1 1 include 2 using nam...