Procesamiento de cadenas crudos y cocidos en c ++

Hay muchas maneras de definir literales. Por supuesto, el tipo de información que afecta a un literal es el método más común. Sin embargo, los literales también pueden ser crudas o cocidas. LA crudo literal recibe la entrada de la fuente de la aplicación y no interpretarlo de ninguna manera. Lo que esto significa es que la información es interpretada carácter por carácter, precisamente como el remitente ha presentado.

Cocido literales interpretan de entrada del remitente y realizar automáticamente las conversiones necesarias para que los datos utilizable para el receptor.

La forma más fácil de ver este principio en acción es a través de un ejemplo. los RawAndCooked ejemplo mostrado demuestra la técnica utilizada para crear el procesamiento de cadenas, ya sea crudo o cocido.

#include using namespace std-int main () {auto Cocido = "(Hola r nNo)" - auto Raw = R "(Hola r nNo)" - cout lt; lt; Cocido lt; lt; endl-cout lt; lt; Raw lt; lt; endl-}

La mayoría de las veces cuando vea el r n combinación, usted sabe que la salida de voluntad aplicación un retorno de carro y la combinación de avance de línea. Este es el método de cocinado procesamiento de una cadena.

La cadena se interpreta y ningún carácter de escape convierte en caracteres de control (caracteres que normalmente se consideran como comandos, en lugar de datos, tales como el retorno de carro). Sin embargo, observe cómo el Raw se crea cadena. los R en frente de la cadena indica al compilador para crear la variable sin interpretar el contenido.

Aquí está la salida que se ve en este ejemplo:

 (HelloThere) Hola r nNo

Observe que la forma cocinada hace la salida del paréntesis, pero la forma cruda no. El paréntesis se requiere como parte de la entrada de forma cruda. Como se pueden imaginar, la forma cocinada emite el r n combinación como caracteres de control, mientras que la forma cruda da salida a los personajes reales.




» » » » Procesamiento de cadenas crudos y cocidos en c ++