這是代碼。它必須具有void main()之前的部分,因爲它是我被告知代碼的要求。void strcopy之後的東西需要保留到void main()。將一個字符串複製到另一個字符串的程序,其中包括打印奇怪字符
#include <stdio.h>
void strcopy(char * string1, char * string2)
{
int i = 0;
while (string1[i] != '\0') {
string2[i] = string1[i];
i++;
}
return;
/* copies string1 to string 2 */
}
void main()
{
char string1[1000], string2[1000];
int i;
printf("Enter the string: \n");
scanf("%[^\n]s", string1);
printf(" %s ", string2);
return;
}
這是什麼正在打印,我很難過。有人可以幫我嗎?
Enter the string:
hello
t��\�
感謝
你永遠不會調用'strcopy()',所以'string2()'是未初始化的。 – Barmar
應該使用'scanf(「%999 [^ \ n] s」,string1);'而不是爲了防止緩衝區溢出。 – RoadRunner