Sdílet prostřednictvím


Chyba kompilátoru C2001

nový řádek v konstantě

Remarks

Řetězcovou konstantu nelze pokračovat na druhém řádku, pokud neuděláte následující:

  • Ukončete první řádek zpětným lomítkem.

  • Zavřete řetězec na prvním řádku dvojitou uvozovkou a otevřete řetězec na dalším řádku s další dvojitou uvozovkou.

Konec prvního řádku s \n není dostatečný.

Example

Následující příklad vygeneruje C2001:

// C2001.cpp
// C2001 expected
#include <stdio.h>

int main()
{
    printf_s("Hello,
             world");
    printf_s("Hello,\n
             world");
}

Mezery na začátku dalšího řádku za znakem pokračování řádku jsou zahrnuty do řetězcové konstanty. Žádný z příkladů uvedených výše nevkládejte znak nového řádku do řetězcové konstanty. Můžete vložit znak nového řádku, jak je znázorněno tady:

// C2001b.cpp
#include <stdio.h>

int main()
{
    printf_s("Hello,\n\
             world");

    printf_s("Hello,\
             \nworld");

    printf_s("Hello,\n"
             "world");

    printf_s("Hello,"
             "\nworld");

    printf_s("Hello,"
             " world");

    printf_s("Hello,\
             world");
}