編寫函式 strcpy char to,char from 將字串from複製到字串to。完成整個程式

2022-05-07 11:26:36 字數 2721 閱讀 6270

1樓:匿名使用者

c語言中,字串是有特點的字元陣列, 以'\0'作為資料的結尾。所以,可以用指標遍歷陣列,根據資料值判斷是否到了結束位置,結束字元拷貝。

2樓:匿名使用者

字串拷貝函式extern char *strcpy(char *dest,char *src); .

字串拷貝函式strcpy

格式: strcpy (字元陣列名1,字元陣列名2)功能:把字元陣列2中的字串拷貝到字元陣列1中。

串結束標誌「\0」也一同拷貝。字元數名2,也可以是一個字串常量。這時相當於把一個字串賦予一個字元陣列。

#include"string.h"

main()

本函式要求字元陣列1應有足夠的長度,否則不能全部裝入所拷貝的字串。

3樓:

已經達到功能了。最多把strcpy(char *to,char *from)中while(*to++=*from++){};的一對{}刪除就行了。但不刪也可以,不影響正確執行。

4樓:老猿

int strcpy(char *to,char *from)

5樓:

#include

char* strcpy(char *to,char *from);return curr;

}void main()

編寫strcpy(char*s,char*t)函式,實現把t指向的字串複製到s中

6樓:匿名使用者

void strcpy(char *s,char *t)

*s='\o';}

7樓:匿名使用者

**,mystrcpy

#include

void mystrcpy(char *a,char *b)int main()

strcpy(str+2,strcat(p1,p2))啥意思。

8樓:匿名使用者

strcat(p1,p2)就是把p2所指的字串,連線到p1後面。

如char *p1="ab",char *p2="cd"; strcat(p1,p2)後,則p1指向"abcd",

strcat返回的是p1的指標。

strcpy就是把些時p1所指的內容,放在str+2的位置上。

比如str指向"xyz",

則strcpy後,str指向值為「xyabcd"

當然,這些操作的前提,都是陣列不要越界了!

9樓:匿名使用者

p1,p2,str都是字串

strcat是將p2接到p1的後面,例如:p2="abc", p1="jkl", 那麼strcat(p1,p2),得到的p1就是"jklabc",p1也是這個函式的返回值

strcpy是將第二個字串複製到第一個字串那裡例如:strcpy(str, "abc"); 那麼str就是"abc"

至於你整句可以寫個簡單的**測試下

int main()

列印abkkklll

10樓:

strcpy

語法:#include

char *strcpy( char *to, const char *from );

功能:複製字串from 中的字元到字串to,包括空值結束符。返回值為指標to。

所以strcpy(str+2,strcat(p1,p2))等價於char *a=strcat(p1,p2);

strcpy(str+2,a);

把p2字串複製到p1,然後再將p1的字串複製到str+2為地址的指標所指向的記憶體單元(陣列)

11樓:

先執行strcat(p1,p2),執行的結果是將p2字串複製到p1的尾部,要注意p1空間是否夠大,返回的是char *型別,即尾部新增了p2的p1。然後執行str+2,若str是一個可變指標,結果為:str指向原來str指向的字串的第三個位置。

然後執行strpy(a,b),執行結果是將p1覆蓋現在的str字串。總而言之,程式的本意是:p1連線p2後,從str的第三個位置開始覆蓋。

12樓:

char *p1="ab";

char *p2="cd";

strcat(p1,p2);

如果在函式裡面這些,執行會報錯的,根本得不到想要的結果的;

具體錯誤的原因如下:

原型:extern char *strcat(char *dest,char *src);

src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。

簡單的說就是:p1指向文字常量區,是隻讀的, 把p1改成陣列形式就可以了

就是p1不可以是指標,改成陣列就可以了

c語言:編寫函式mstrcpy(char *t,char *s,int m)字串

13樓:微俊

#include "stdio.h"

void mstrcpy(char *t,char *s,int m)

{int i=0,j=0;

t[0]='\0';

while(i

s[100]="12hello56world!";

符號有問題

編寫程式求解分段函式,編寫程式 求解分段函式 y x 5 x 0 ,y x 1 x 0 ,y x 1 0 x 10 ,y 100 其他

include int main 用j a編寫程式,求解一下分段函式。要求輸入x的值,輸出函式y的值。x 5 class fun public int y int x else if x 0 else if x 0 x 10 else return 0 在c語言中怎麼將分段函式 y x 1 5 if...

如何編寫jquery 外掛 函式a呼叫函式

你這是函式a裡面有一個函式b 但是你說你函式a呼叫了函式b。在哪呼叫的。能寫個簡單點得完整例子嗎。你現在寫的太簡單了。都看不出來錯在 setinterval預設的上下文是window所以相當於呼叫window.showauto,當然找不到方法。function a function b 我要看明白你...

c語言編寫函式求1C語言編寫函式求112131415161n的值怎麼做結果是什麼呢

需要準備的材料分別有 電腦 c語言編譯器。1 首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如 test.cpp。2 在test.cpp檔案中,輸入c語言 int n 100 double s for int i 1 i n i if i 2 0 s 1.0 i else s 1.0 i pr...