Formato de cadena personalizado#

Introducción#

El formato de cadena en C++ para VEX EXP utiliza especificadores de formato deestilo printf para crear cadenas que incluyen variables, expresiones o valores. Este método utiliza especificadores de formato como %d %f, %s, etc., para insertar valores en cadenas.

Formato de números: inserte valores y expresiones en una cadena.

  • %d — Formatos enteros.

  • %.xf — Establece el número de decimales que se mostrarán para los flotantes.

  • %x — Formatea un número como hexadecimal.

  • %c — Formatea caracteres individuales.

  • %s — Formatea cadenas de estilo C.

Combinar cadenas — Combinar texto y valores.

  • strcat — Concatenar cadenas de estilo C manualmente.

Comprobación de subcadenas: prueba de presencia o posición del texto.

  • strstr — Encuentra una subcadena dentro de una cadena.

Secuencias de escape — Formato de salida con caracteres especiales.

  • \n — Añade un salto de línea (nueva línea).

Formato de números#

C++ utiliza especificadores de formato para controlar cómo aparecen los números y otros tipos de datos en las cadenas.

Integers#

Formatea valores enteros utilizando el especificador de %d formato.

Format specifiers
%d

Parameters

Este especificador de formato no tiene parámetros.

Return Values

Formatea el valor entero como un entero en la cadena.

Examples
int count = 42;

// Display a single variable 
Brain.Screen.print("Count: %d", count);

int x = 1;
int y = 5;

// Display multiple variables
Brain.Screen.print("Position: (%d, %d)", x, y);

// Display a calculation
Brain.Screen.print("Sum: %d", 5 + 3);

// Display the robot's battery capacity
Brain.Screen.print("Battery: %d%%", Brain.Battery.capacity());

Fixed Decimal Places#

Controla con cuántos decimales se muestra un número de punto flotante usando el especificador de formato %.xf.

Format specifiers
%.xf

Parameters

Parámetro

Tipo

Descripción

x

int

El número de decimales a mostrar.

Return Values

Formatea el valor de coma flotante con el número especificado de decimales.

Examples
// Display pi with 2 decimal places
double pi = 3.1415926535;
Brain.Screen.print("Pi: %.2f", pi);

Hexadecimal#

Convierte números a representación hexadecimal usando %x (minúsculas) o %X (mayúsculas).

Format specifiers

1 — Formatea los números en minúsculas hexadecimales.

%x

2 — Formatea los números en mayúsculas hexadecimales.

%X

Parameters

Este especificador de formato no tiene parámetros.

Return Values

Formatea el valor entero como una cadena hexadecimal.

Examples
// Convert 255 to hexadecimal
int number = 255;

// Display hexadecimals 
Brain.Screen.print("Hex: %x", number);

Brain.Screen.print("Hex: 0x%X", number);

Characters#

Formatea caracteres individuales utilizando el especificador de %c formato.

Format specifiers
%c

Parameters

Este especificador de formato no tiene parámetros.

Return Values

Formatea el valor del carácter como un solo carácter.

Examples
char letter = 'A';

// Display a single character variable
Brain.Screen.print("Letter: %c", letter);

Strings#

Formatea cadenas de estilo C (matrices de caracteres) utilizando el especificador de %s formato.

Format specifiers
%s

Parameters

Este especificador de formato no tiene parámetros.

Return Values

Formatea el valor de la cadena como texto.

Examples
char message[] = "EXP";

// Display a string variable
Brain.Screen.print("Hello, %s", message);

Combinación de cadenas#

Combina dos cadenas usando la función strcat.

Available Functions
char* strcat(char* string1, const char* string2);

Parameters

Parámetro

Tipo

Descripción

string1

char*

La cadena a agregar. Debe haber espacio para el nuevo texto.

string2

const char*

La cadena que desea agregar.

Return Values

Devuelve un puntero a la cadena resultante (string1).

Notes
  • Asegúrese de que la cadena tenga suficiente espacio reservado para los caracteres que se van a añadir. Agregar caracteres a una cadena que es demasiado pequeña puede sobrescribir otras variables y causar un comportamiento inesperado.

Examples
// Make sure the variable has enough space
// for all characters (set it to 20)
char message[20] = "Hello,";
strcat(message, " EXP");

// Display the combined strings
Brain.Screen.print("%s", message);

Comprobación de subcadenas#

Devuelve un puntero a la posición de la primera aparición de una cadena de estilo C en otra cadena utilizando la función strstr.

Available Functions
char* strstr(const char* str, const char* substring);

Parameters

Parámetro

Tipo

Descripción

str

const char*

Un puntero a la cadena que se está buscando.

substring

const char*

La cadena a buscar.

Return Values

Devuelve un puntero a la primera aparición de la subcadena, o NULL si no se encuentra la cadena.

Examples
char message[] = "Hey everyone!";

// Display if "Hey" is in the variable
if (strstr(message, "Hey") != NULL) {
    Brain.Screen.print("Hello!");
}

Secuencias de escape#

Las secuencias de escape son caracteres especiales que se utilizan dentro de las cadenas para dar formato a la salida de texto.

New Line#

Mueve el texto a una nueva línea al imprimir usando la secuencia de \n escape.

Format specifiers
\n

Parameters

Esta secuencia de escape no tiene parámetros.

Return Values

Inserta un carácter de nueva línea en la salida.

Notes
  • Esto solo funciona en la consola. El texto no se enviará a la consola hasta que se inicie una nueva línea.

Examples
// Display text on two lines
printf("First line\nSecond line\n");