Ajuda em função (Array de tags)

Amigos, dessa vez venho com um problema mais simples, na verdade essa é a raiz dos problemas:

Podem me ajudar a fazer esta função?

Preciso que cada mensagem (que é uma String), seja colocada em um vetor de Strings, lembrando que a cada mensagem nova recebida, deve ser colocada em outra posição do vetor. Ex. str1, str2,str3

void callback(char*cadastrar, byte*payload, unsigned int length) {
  Serial.println();
  Serial.print("Messagembida [");
  Serial.print(cadastrar);
  Serial.print("]: ");
  String mensagem = "";
  //Conversão da mensagem recebidade de byte pra String
  for (int i = 0; i < length; i++) {
    mensagem += (char)payload[i];
  }
 cadastra_tag();
  
  Serial.println(mensagem);
  Serial.println();
}

void cadastra_tag() {

      cada mensagem deve ir para um vetor de strings
}

Aqui tens de ter um contador que indica a nova posição para onde copiar a string.

Deixo desde já o aviso que o Arduino não é uma plataforma muito boa para fazer coisas destas... mas tu lá sabes.