The latest C ++ 0x, n3126 project says:
Each instance of the backslash character (\) immediately followed by a newline character is deleted by splicing the physical source lines to form the logical lines of the source.
...
Inside the r-char sequence of the original string literal, any transformations performed in phases 1 and 2 (trigraphs, universal character names, and linear splices) are returned.
Technically, this means that the C ++ preprocessor only recognizes a backslash followed by a newline, but I know that some C ++ implementations also allow line endings in the style of Windows or classic Mac.
Is C ++ 0x implementations required to preserve a newline sequence that immediately follows the backslash character \ within the r-char sequence of the original string? Perhaps the best question is: was it expected from the Windows C ++ 0x compiler to cancel each line splicing using "\\\r\n" instead of "\\\n" ?
c ++ c-preprocessor c ++ 11 rawstring
Daniel Trebbien
source share