Duvida programação C

Olá amigos,

Estou iniciando estudos em programação C (Arduino). Fiz um pequeno programa apernas como exemplo de função e gostaria de saber pq não imprime o resultado no Serial.

Poderiam me ajudar?

Agradeço desde já.

void setup() {
  Serial.begin(115200);
}

void loop() {
  
  char* teste = criaVetor();
  Serial.print("Resultado: ");
  Serial.println(teste);
  
}

char* criaVetor(){
   char vetor[10]="Olá mundo!";  
   return vetor;
   
}

A tua variável vetor é criada dentro da função criaVetor(), quando a função acaba de executar, todas as variáveis criadas por ela são apagadas. Daí não imprimir nada.

Tu podes usar uma variável global ou passar um apontador para a tua variável criada dentro da loop. Se fizeres a segunda opção tens de usar uma função para copiar a string como strcpy ou preferencialmente strncpy.