"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso criar literais de strings multilinhas em C++?

Como posso criar literais de strings multilinhas em C++?

Publicado em 2024-12-28
Navegar:231

How Can I Create Multi-Line String Literals in C  ?

Literais de string multilinha em C

Em C , definir um literal de string multilinha não é tão simples quanto em algumas outras linguagens como Perl. No entanto, existem algumas técnicas que você pode usar para conseguir isso:

Literais de String Concatenadas

Um método é utilizar o fato de que literais de string adjacentes em C são concatenados pelo compilador. Ao dividir sua string em várias linhas, você pode criar uma única string com várias linhas:

const char *text =
  "This text is pretty long, but will be "
  "concatenated into just a single string. "
  "The disadvantage is that you have to quote "
  "each part, and newlines must be literal as "
  "usual.";

Observe que o recuo não importa, pois fica fora das aspas.

String com novas linhas de escape

Outra abordagem envolve o uso de uma string literal com escaparam de novas linhas. Em vez de usar caracteres de nova linha na própria string, você pode escapá-los com barras invertidas (\), assim:

const char *text2 =
  "Here, on the other hand, I've gone crazy \\\
and really let the literal span several lines, \\\
without bothering with quoting each line's \\\
content. This works, but you can't indent.";

Lembre-se, as barras invertidas devem estar imediatamente antes do final de cada linha para escapar da nova linha. Este método funciona, mas evita que o recuo seja preservado.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3