这是我的代码:
#include <stdio.h>
void strcpy1(char d[], char s[])
{
int i = 0;
do
{
d[i] = s[i];
i++;
} while (d != '\0');
}
void strcpy2(char * d, char * s)
{
do {
d[0] = s[0];
s++;
d++;
} while (&d != '\0' && &s != '\0');
}
int main(void)
{
char text[80];
char bufneu[80] = "Good morning!";
char buffer[80] = "How do you do?";
printf("\n\n\n Gib einen String < 80 Zeichen ein: ");
gets_s(text);
printf("\n Jetzt kommt der Inhalt des Buffers text: %s\n", text);
printf("\n Jetzt kommt der Inhalt des Buffers bufneu: %s\n", bufneu);
strcpy1(bufneu, text);
printf("\n Inhalt des Puffers bufneu nach ");
printf("strcpy1 (bufneu, text): %s\n", bufneu);
printf("\n In Puffer buffer steht: %s\n", buffer);
strcpy2(bufneu, buffer);
printf("\n Inhalt des Puffers bufneu nach ");
printf("strcpy2 (bufneu, buffer): %s\n", bufneu);
return 0;
}
我遇到的问题是“ strcopy”功能不起作用,因为我抛出了异常,而且我也不知道是什么原因引起的。有人可以帮我吗?
我希望程序向我显示主函数中的两个给定数组+我在控制台上键入的内容。注意:主要功能只有我必须编辑的两个功能“ strcpy1”和“ strcpy2”。