c语言程序设计 5. 编程实现两个字符串的复制。 #include <stdio.h> void main() { char str1[30],str2[30

2024-11-30 19:10:38
推荐回答(5个)
回答1:

哪一年的c语言书,还在 void main() { } 哇、童鞋,那本书还是不要看了、

int main()
{
......
strcpy(str1, str2); // 头文件中有,该字符串拷贝函数、将str2 串拷贝到str1中去
.......
return 0;
}

我们可以手动编写一个,建议,不要学习ls 的习惯(虽然他的第二个程序写的很好、):
const char* MyStrCpy(char* pDstStr, const char* pSrcStr);

c 的精神:简单、优美,看看他的命名习惯,java、vc恐怕学得多了、、

char *strcopy(char *s, char *t) // 将 t 串拷贝到 s 中去,并返回s、这里用的strcopy,不是strcpy、注意一下!!
{
char * p = s;
while( *p++ = *t++); // 一个一个拷贝,直到遇到 '\0' (实际就是0,做判断的话,就是false)
return s;
}

建议 lz 看下 K&R 这本书,虽然介绍的c89,你懂的,c语言从那个时候,基本就已经定型了、~~

回答2:

我刚刚编了一个这样的程序,下面的代码就能把str2中的字符赋值给str1
#include
#include
#include
int main(void)
{
char str1[30]="hello",str2[30]="nihao";
int len,i;
strlen(gets(str2));
for(i=0;i<=len;i++)
str1[i]=str2[i];
puts(str2);
getch();
return 0;

}

回答3:

第一种:
const char* MyStrCpy(char* pDstStr, const char* pSrcStr)
{
char* pTemp = pDstStr;
do
{
*pTemp = *pSrcStr;
pTemp++;
pSrcStr++;
} while ('\0' != *pTemp);

return pDstStr;
}

第二种:
const char* MyStrCpy(char* pDstStr, const char* pSrcStr)
{
char* pTemp = pDstStr;
while (*pTemp++ = *pSrcStr++)
{
}

return pDstStr;
}

回答4:

如果将str1复制给str2的话,就这样strcpy(str1,str2).

回答5:

strcpy(str1,str2)