Could someone explain to me what is going on here? Why does this code:

Code:
char[6] startText;

char data[] = "1.1\nWord\nWord\n0-5\n\0";
char* dataPtr = data;
char** objectData2 = &dataPtr;


std::cout << "Data:" << *objectData2 << std::endl;


char null[1];
null[0] = '\0';
                
strncpy(startText, *objectData2, 5);
strcat(startText, null);
                
std::cout << "startText: " << startText << std::endl;
Give me this output:

Data:1.1
Word
Word
0-5


startText: 1.1
W00 00-00 00-00 00-A


What is this rubbish at the end of the startText???