c++面試題字符串拷貝函數(shù)示例
#include<iostream>
using namespace std;
//字符串拷貝函數(shù)
char * sCpy(char *strDest, char *strSource)
{
_ASSERT((strDest != NULL) && (strSource!=NULL));
char *d = strDest; //獲取dest的當前位置
char *s = strSource; //獲取source的當前位置
while ((*d++ = *s++) != '\0') //未到最后一位,作循環(huán)
{
}
*d = '\0'; //補充最后一位
return strDest;
}
int main()
{
char *strSource = "hello,world";
char *strDest = new char[strlen(strSource)+1]; //注意,strlen函數(shù)的返回長度是不包括'\0'的,所以要加1
_ASSERT(strDest != NULL);
char *strReturn = sCpy(strDest,strSource);
cout<<"形參返回值"<<strDest<<endl;
cout<<"函數(shù)返回值"<<strReturn<<endl;
//不作釋放操作也應該是沒問題的,主線程退出后系統(tǒng)會回收資源
delete strSource,strDest,strReturn;
strSource = strDest = strReturn = NULL;
return 0;
}
strcpy(str1,str2)函數(shù)能夠將str2中的內容復制到str1中,為什么還需要函數(shù)返回值?應該是方便實現(xiàn)鏈式表達式,比如:
int i_length = strlen(strcpy(str1,str2));
相關文章
C++異常處理 try,catch,throw,finally的用法
這篇文章主要介紹了C++異常處理 try,catch,throw,finally的用法,需要的朋友可以參考下2018-01-01C語言 OutputDebugString與格式化輸出函數(shù)OutputDebugPrintf案例詳解
這篇文章主要介紹了C語言 OutputDebugString與格式化輸出函數(shù)OutputDebugPrintf案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下2021-08-08C++ throw關鍵字實現(xiàn)拋出異常和異常規(guī)范
本文主要介紹了C++ throw關鍵字實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08