bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

“strcpy”模擬的實現-創(chuàng)新互聯

我們都知道 strcpy() 函數是字符串拷貝函數,那么我們怎樣來模擬實現這個函數呢?!

網站建設哪家好,找創(chuàng)新互聯建站!專注于網頁設計、網站建設、微信開發(fā)、成都小程序開發(fā)、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯還提供了揭陽免費建站歡迎大家使用!

首先,我們要明白,strcpy() 在拷貝字符串的時候是一個一個拷貝的,直到遇到字符串結束標志 '\0' 時才停止拷貝。所以,明白了這一點,我們就可一進行簡單的模擬實現了

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

char *my_strcpy(char *str1, const char *str2)
{
	assert(str1);
	assert(str2);
	while(*str1 != '\0')        //目標地址遇到'\0'結束
	{
		*str1 = *str2;
		str1++;
		str2++;
	}
	//while(*str2 != '\0')     //注意判斷條件一定不能這樣寫 
	//{
	//	*str1 = *str2;
	//	str1++;
	//	str2++;
	//}
	return str1;
}
int main()
{
	char str[10];                //目標地址一定要是一個字符數組
	char *pa = "abcdef";         
	my_strcpy(str,pa);
	printf("%s\n",str);
	system("pause");
	return 0;
}

由于目標地址是沒有初始化的一個字符數組,它里邊存的內容我們是不知道的,并且在拷貝的過程中它會連同 *pa 中的 '\0' 一塊拷貝,所以 while 條件句中的判斷是 *str1 != '\0' ,如果判斷錯誤即寫為 *str2 != '\0' ,那么就會得到以下結果。

“strcpy” 模擬的實現

關于 my_strcpy() 函數模擬實現的幾點要求:

1.拷貝時是連同字符串中的 '\0' 一塊拷貝的;

2.函數實參的設定:原字符串前要加 const 保護;

3.函數的返回值類型要是 char* 類型(便于鏈式訪問);

4.進入函數內部,要對兩個指針進行斷言,判斷指針是否為空;

5.函數要返回一個值(地址);

6.一定要進行優(yōu)化


最優(yōu)化代碼:

char *my_strcpy(char *str1, const char *str2)
{
	assert(str1);
	assert(str2);
	while(*str1++ = *str2++)      
	{
		;
	}
	return str1;
}

創(chuàng)新互聯www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統配攻擊溯源,準確進行流量調度,確保服務器高可用性。佳節(jié)活動現已開啟,新人活動云服務器買多久送多久。

本文標題:“strcpy”模擬的實現-創(chuàng)新互聯
當前URL:http://vcdvsql.cn/article18/diohgp.html

成都網站建設公司_創(chuàng)新互聯,為您提供網站收錄靜態(tài)網站響應式網站網站內鏈軟件開發(fā)微信公眾號

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

網站托管運營