Przenoszenie tekstu z jednej tablicy do drugiej.

0

Witam, moim zadaniem było napisanie programu który na początku prosi o imię i nazwisko do dwóch osobnych tablic, a potem przenosi nazwisko do tablicy z imieniem i rozdziela spacją, staram się użyć funkcji strcpy, jednak to powoduje że w tablicy name jest tylko nazwisko, próbowałem coś zrobić z tym, aby zaczeło się kopiować dopiero po imieniu, co zrobiłem nie tak? Czy zamiast używać strcpy nie użyć innej funkcji np. strcat lub memcpy? I jeszcze jedno, mój profesor używa zmiennej SilentBytes, gdy czytałem o srtcpy to tam są potrzebne tyko dwa stringi, w jakim celu on używa tej zmiennej?

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
#include <string.h>

void inp_string(char* str, size_t SilentBytes);
void out_string(char* str);
void proc_string(char* str, char str1[], size_t SilentBytes);

int main()
{
	char name[64], surname[32];
	inp_string(name, sizeof(name));
	inp_string(surname, sizeof(surname));
	out_string(name);
	out_string(surname);
	proc_string(name, surname, sizeof(name));
	printf("%s", name);

	system("pause");
	return 0;
}



void inp_string(char* str, size_t SilentBytes)
{
	printf_s("Podaj imię i nazwisko:\n");
	if (gets_s(str, SilentBytes - 1) == NULL)  
		printf("??? %s\n", str);
}

void out_string(char* str)
{
	printf_s("  %s   \n", str);
}


void proc_string(char* str, char str1[], size_t SilentBytes)
{
	size_t lenght = strlen(str)+1;
    strcpy_s(str+lenght, SilentBytes - 2,str1);
	
}
1
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define __STDC_WANT_SECURE_LIB__ 0

int main()
{   
	char name[32+1+64+1],surname[64+1];
	printf("Podaj imie: ");
	scanf(" %32[^\n]",name);
	printf("Podaj nazwisko: ");
	scanf(" %64[^\n]",surname);
	sprintf(name,"%s %s",name,surname);
	printf("Podano: \"%s\"\n",name);
    return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1