std::println
| Definido en el archivo de encabezado <print>
|
||
template< class... Args > void println( std::format_string<Args...> fmt, Args&&... args ); |
(1) | (desde C++23) |
template< class... Args > void println( std::FILE* stream, std::format_string<Args...> fmt, Args&&... args ); |
(2) | (desde C++23) |
void println(); |
(3) | (desde C++26) |
void println( std::FILE* stream ); |
(4) | (desde C++26) |
Da formato a args de acuerdo a la cadena de formato fmt con la adición del caracter de nueva línea '\n' (lo que significa que cada salida finaliza con una nueva línea), e imprime el resultado en un flujo.
std::println(stdout, fmt, std::forward<Args>(args)...).std::print(stream, std::runtime_format(std::string(fmt.get()) + '\n'),std::forward<Args>(args)...).
std::println(stdout).std::println(stream, "\n").El comportamiento es indefinido si std::formatter<Ti, char> no cumple con los requerimientos BasicFormatter para cualquier Ti en Args (según lo requiere std::make_format_args).
Parámetros
| stream | - | Flujo de salida al cual escribir | ||||
| fmt | - |
Cada campo de reemplazo tiene el siguiente formato:
arg-id especifica el índice del argumento en La especificación de formato se define por la especialización de std::formatter del argumento correspondiente.
| ||||
| args... | - | Argumentos a ser formateados |
Excepciones
- std::bad_alloc en errores de asignación.
- std::system_error, si falla la escritura a los flujos.
- Propaga cualquier excepción lanzada por los formatters usados, p.e. std::format_error.
Notas
| Macro de prueba de característica | Valor | Estándar | Comentario |
|---|---|---|---|
__cpp_lib_print |
202207L |
(C++23) | Salida formateada |
202403L |
(C++26) | Salida formateada con flujo bloqueado | |
__cpp_lib_format |
202207L |
(C++23) | Exponiendo std::basic_format_string |
Ejemplo
#include <print>
int main()
{
// Cada llamado a std::println finaliza con una nueva línea
std::println("Por favor"); // sobrecarga (2)
std::println("ingrese la"); // (2)
std::print("contra");
std::print("seña");
std::println(); // (4); válido desde C++26; tiene el mismo efecto que std::println("");
}
Salida:
Por favor
ingrese la
contraseña
Véase también
(C++23) |
Imprime en stdout, o en un flujo de archivo usando la representación formateada de los argumentos (plantilla de función) |
(C++23) |
Genera la representación formateada de los argumentos con la adición del caracter de nueva línea '\n' al final (plantilla de función) |
(C++20) |
Almacena una representación formateada de los argumentos en una cadena nueva. (plantilla de función) |
(C++11) |
Imprime la salida formateada para stdout, una secuencia de archivo o un búfer. (función) |