1.已知strcpy 函式的原型是:
char *strcpy(char *strdest, const char *strsrc);
其中strdest 是目的字串,strsrc 是源字串。不呼叫c++/c 的字串庫函式,請編寫函式 strcpy
答案:c**
char *strcpy(char *strdest, const char *strsrc)
注意要點,
(1)傳過來的源指標strsrc所指的字串內容在該函式內是不能夠修改的,因此應該宣告為const型別。
(2)判斷源指標或目的指標為空的情況,思維嚴謹,要考慮異常處理。
(3)要考慮傳過來的源和目的指標指向同乙個記憶體區的情況,如果指向同一記憶體區則源指標=目的指標,直接返回其中乙個即可。
(4)函式原型要注意返回值為目的串的首位址,要考慮拷貝函式的返回值做其他函式的引數
c++**,因此在函式內要儲存目的指標的首位址。
(5)在拷貝字串時,有兩種方式要麼先判斷字元是否為空,再拷貝,這時候再迴圈外要給目的串加上'/0'字元;要麼先拷貝再判斷字元為空。
上面**是後一種形式。
前一種形式為
while(*strdest!='/0')
*strdest++=*strsrc++;
*strdest='/0';
c++**:
char * strcpy(char * strdest,const char * strsrc)
從**中看出在c++**中多了乙個異常的處理,用throw拋擲異常。
面試題目之刪除字串
問題描述 在給定字串中查詢所有特定子串並刪除,如果沒有找到相應子串,則不作任何操作。要求實現函式 int delete sub str const char str,const char sub str,char result str 輸入 str 輸入的被操作字串 sub str 需要查詢並刪除的...
c 面試題字串拷貝函式示例
複製 如下 include using namespace std 字串拷貝函式 char scpy char strdest,char strsource 程式設計客棧nbsp d 0 補充最後一位 return strdest int main strcpy str1,str2 函式能夠將str...
C 面試題 之字串
基本上求職者進行筆試時沒有不考字串的。字串也是一種相對簡單的資料結構,容易引起面試官反 問。事實上,字串也是考驗 程式設計師程式設計規範和程式設計習慣的重要考點。不要忽視這些細節,因為這些細節會體現你在作業系統 軟體工程 邊界記憶體處理等方面的知識掌握能力,也會成為企業是否錄用你的參考因素。答案 i...