c語言拷貝字元串
Ⅰ c語言,使用函數實現字元串復制
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <time.h>
/*把從src地址開始的字元串復制到以dest開始的字元串中*/
char* str (char* dest, char *src) {
char* r = dest;
while((*r++ = *src++)!='\0');
return dest;
}
int main () {
char *str1="abcde";
char *str2;
str2 = str (str2, str1); /*把str1復制到str2*/
puts (str2);
return 0;
}
Ⅱ C語言中字元串的復制
要先加入
頭文件
#include
裡面的有個函數可以直接復制字元串
例如:
strcpy(str2,str1)
;
把str1中的字元復制到str2中。
Ⅲ C語言中如何用指針復制字元串
#include<stdio.h>
#include<string.h>
char*string(char*str2,char*str1);
intmain(){
charstr1[30]="hello,stringcopied! ";
charstr2[30];
printf("str2=%s ",string(str2,str1));
return0;
}
char*string(char*str2,char*str1){
char*tmp=str2;
while(*tmp++=*str1++);
returnstr2;
}
Ⅳ c語言strcpy()用法
1、strcpy函數是復制字元串的,接受兩個參數,一個是被復制字元串,另一個新字元串。具體的用法,首先打開編輯器新建一個c語言的程序文件,寫入頭文件和主函數:
Ⅳ C語言復制字元串問題
不能刪除。因為'\0'是字元串結束符,讀內存,遇到它就表示一個字元串結束了;
如果沒有s2[j]='\0'; 則在讀字元串s2的時候,很可能緊接著的內存還有數據,就會一並被認為是s2字元串的內容了。
看起來,你是要實現strcat的功能!
Ⅵ c語言把一個字元串復制到另一個字元串
用char指針復制字元串用while循環:
#include<stdio.h>
int main()
{ char s[300],s1[300],*p=s,*q=s1;
gets(s);
while(*q++=*p++);
puts(s1);
return 0;
}
=================
用庫函數:
#include<stdio.h>
#include<string.h>
int main()
{ char s[300],s1[300];
gets(s);
strcpy(s1,s);
puts(s1);
return 0;
}
Ⅶ C語言中,用指針實現字元串的拷貝,不能用strcpy,用自定義函數實現該功能
#include<stdio.h>
#include<assert.h>/*斷言的頭文件*/
char*my_strcpy(char*dest,const char*src)
/*傳參,把src依次傳給dest,指針數組,每一個都是地址*/
{
char*ret=p;/*接收的為地址*/
assert(src!=NULL);
/*,使用指針一定要先用查找函數判斷是否為空,防止不小心將空地址傳遞*/
while(*dest++=*src++)
{
;
}
return p;/*返回的ret為字元串則用char,且為地址*/
}
int main()
{
char arr1[]="Hello world!";
char arr2[20];
char*ret=my_strcpy(arr2,arr1);
printf("%s",ret);/*列印出的為字元串*/
return 0;
}
註:%g、%G在小數點位數四位或指數大於等於精度時用%e、%E,否則用%f。
Ⅷ 怎樣用字元指針實現兩個字元串的拷貝,求c語言程序
int *p *q
將設將q中的復制到p中
while(*q!='