strcpy,即string copy(字符串復制)的縮寫。
是C語言標準庫中實現字符串拷貝的一個函數。
各大公司筆試題最喜歡考的一道題,快來看看,你會幾種方法?
問:你會如何實現這個函數呢?
1
voidstrcpy(char*strDest,char*strSrc){
while((*strDest++=*strSrc++)!='');
}
2
//將源字符串strSrrc加const,表明其為常量輸入參數
voidstrcpy(char*strDest,constchar*strSrc){
while((*strDest++=*strSrc++)!='');
}
3
voidstrcpy(char*strDest,constchar*strSrc){
//對源地址strSrc和目標地址strDest加非NULL(0)斷言
assert((strDest!=NULL)&&(strSrc!=NULL));
while((*strDest++=*strSrc++)!='');
}
4
//為了實現鏈式操作,將目的地址返回
char*strcpy(char*strDest,constchar*strSrc){
assert((strDest!=NULL)&&(strSrc!=NULL));
char*address=strDest;
while((*strDest++=*strSrc++)!='');
returnaddress;
}
5
.text
mystrcopy:
LDRBr2,[r1],#1
STRBr2,[r0],#1
CMPr2,#0
BNEmystrcopy
MOVpc,lr
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
C語言
+關注
關注
180文章
7608瀏覽量
137134 -
字符串
+關注
關注
1文章
584瀏覽量
20553 -
函數
+關注
關注
3文章
4338瀏覽量
62750 -
strcpy
+關注
關注
0文章
5瀏覽量
1213
原文標題:問:你會如何實現這個函數呢?
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
C語言字符串轉數字實現方法
在C/C++語言中沒有專門的字符串變量,通常用字符數組來存放字符串。字符串是以“\0”作為結束符。C/C++提供了豐富的字符串處理
發表于 11-14 17:50
?1.3w次閱讀
【單片機學習筆記】(6):字符串處理函數、變量的三種情況、用函數實現模塊化程序設計、晶振與延時、指針
/ 字符串處理函數 / stract函數 字符串連接函數例:printf(“%s”, stract(str1, str2));
發表于 01-12 20:44
?4次下載
C語言_字符串與指針的練習
這篇文章涉及到字符串與指針知識點的相關練習。浮點數與字符串互轉、字符串拷貝、字符串比較、指針交換變量、指針優先級、數據類型強制轉換、內存
python字符串有哪些特定方法
python字符串序列操作也適用于列表和元組。
python字符串還有獨有方法,即字符串對象的函數,其他對象不可調用,只有
MySQL替換字符串函數REPLACE
MySQL是目前非常流行的開源數據庫管理系統之一,它具有強大的功能和性能。其中之一的字符串函數REPLACE,可以用于替換字符串中的指定字符或字符串
oracle中拼接字符串函數
在Oracle中,我們可以使用 CONCAT 函數來拼接字符串。CONCAT 函數接受兩個參數,它將這兩個參數連接起來并返回相應的字符串結果。 語法示例: CONCAT(string1
labview字符串如何轉換為16進制字符串
在LabVIEW中,將字符串轉換為16進制字符串是一個常見的需求,尤其是在處理數據通信和硬件接口時。LabVIEW提供了多種方法來實現這一轉換,包括使用內置
字符串處理方法 字符串轉數字的實現
在編程中,將字符串轉換為數字是一個常見的需求。不同的編程語言有不同的方法來實現這一功能。以下是一些常見編程語言中的字符串轉數字的實現
評論