Stringa con piú righe

Ciao a tutti.
É possibile scrivere una stringa con piú righe?

La mia necessitá nasce dal dover inviare per mail un testo, contenente delle variabili prese dal codice in esecuzione che variano in base alle funzioni scelte.
Prendendo questo esempio di codice, ho costruito il messaggio da inviare:

  String textMsg = "Valore1: " + String(Val1) + " Valore2: " + String(Val2) + " Valore3: " + String(Val3);
  message.text.content = textMsg.c_str();
  message.text.charSet = "us-ascii";
  message.text.transfer_encoding = Content_Transfer_Encoding::enc_7bit;
  
  message.priority = esp_mail_smtp_priority::esp_mail_smtp_priority_low;
  message.response.notify = esp_mail_smtp_notify_success | esp_mail_smtp_notify_failure | esp_mail_smtp_notify_delay;

Questa é la parte di codice che invia il messaggio di testo.
Per creare la stringa con i valori del codice, ho scritto cosí:

String textMsg = "Valore1: " + String(Val1) + " Valore2: " + String(Val2) + " Valore3: " + String(Val3);

Tuttavia io ora avrei la necessitá di andare a capo e scrivere un'altra riga, come potrei fare?

Grazie a tutti

Prova ad usare "\r\n".

Inoltre, la classe String può causare problemi di memoria. Se hai davvero bisogno di usarlo, riduci al minimo l'allocazione dinamica.

  textMsg .reserve(50);
  textMsg = "Valore1: ";    textMsg += String(Val1);
  textMsg += " Valore2: ";  textMsg += String(Val2);
  textMsg += " Valore3: ";  textMsg += String(Val3);
  textMsg += "\r\n";  // salta alla riga

In che senso? Perché io potrei anche arrivare a dover inviare all'incirca 30 righe, con 13/16 valori per riga.. Non ce la faccio?

Su cosa lavori?
Su esp la classe string è gestita meglio e crea qualche problema in meno, ma comunque cerca di non abusarne.

In che senso?

Che scheda... Arduino? Esp? Altro?

ESp8266
Ne approfitto per una domanda: la versione che uso io é a 4MB, come mai sullo sketch mi ritrovo un MB solo?

Su questo non sono molto ferrato...
Sicuro di aver selezionato la scheda giusta nel menù? Mi pare ci siano diverse scelte...
Però per risposte più precise meglio che aspetti qualcuno che conosce meglio gli esp

Va bene, tranquillo
Grazie comunque!

Si, sull'IDE ho selezionato la versione a 4MB, peró resta comunque un solo MB per gli sketch
Qualcuno sa se c'é modo di aumentarli?

qual è la tua libreria di eMail?
puoi costruire il corpo in più chiamate?

Non lo so se si puó costruire a pezzi..
La libreria é ESP_Mail_Client

Dipende da come invii la mail. Raw text o html?

Ho entrambi i metodi utilizzabili, peró non saprei come passare le variabili al codice HTML

\r\n per text ma se invii in html, sempre testo è ma puoi aggiungere i tag html per formattare il testo. Ad esempio a capo per html inserisci il testo <br>
"php - New lines (\r\n) are not working in email body - Stack Overflow"

Per un html spedisci:

<HTML><body>
messaggio
</body></HTML>

Nel messaggio puoi usare ad esempio grassetto per il grassetto.
"HTML Text Formatting"

Si, peró come le passo le variabili al codice HTML?

Sempre allo stesso modo. Non cambia nulla.
Eventualmente puoi aggiungere del html per evidenziare, esempio grassetto
String textMsg = "Valore1: <b>" + String(Val1) + "</b> Valore2: " ; .... etc....

No aspetta, scusami ma mi sto confondendo...

Mi puoi fare un esempio scritto di HTML completo con la stringa che devo inviare?
Scusami se rompo ma davvero mi sto confondendo

textMsg ="<HTML><body>"
textMsg +=  "Valore1: <b>"; textMsg += String(Val1); textMsg += "</b>";
textMsg += " Valore2: "; textMsg += String(Val2);
textMsg += " Valore3: "; textMsg += String(Val3);
textMsg += "<br>";  // salta alla riga
textMsg += "seconda riga";
textMsg +="</body></HTML>"

Ed a livello di memoria si ha un risparmio? O sempre uguale ma si ha la possibilitá di giocare sulla pagina a livello estetico?