Buena pregunta.
Según el estándar de C (ISO C99) un compilador debe aceptar, como mínimo, cadenas literales de hasta 4,095 caracteres.
Según el viejo estándar de C++ (C++98) no hay limites sino recomendaciones, en su Anexo B (que solo es informativo) se sugiere un limite 65,536 caracteres para una cadena literal.
Lo mejor en un escenario como este es revisar la documentación del compilador.
Un saludo