我有一个结构数组,每个结构都有一个char数组和一个int。

typedef struct {
    int id; //Each struct has an id
    char input[80]; //Each struct has a char array
    } inpstruct;

inpstruct history[10]; //Array of structs is created


我还有另一个包含用户输入的字符数组

char inputBuffer[80];


用户输入一个单词,后跟\n字符。例如,inputBuffer将包含3个字符:'l' 's' '\n'

我想将inputBuffer中的所有字符复制到history[index].input

我尝试使用:

strcpy(history[index].input, inputBuffer);


但是由于inputBuffer不为null终止,所以它不起作用。如何将所有字符从inputBuffer复制到history[index].input

最佳答案

你想回忆

memcpy(history[index].input, inputBuffer, sizeof(inputBuffer)*sizeof(inputBuffer[0]));

08-03 20:00