Anpassad strängformatering#

Introduktion#

Strängformatering i C++ för VEX V5 använder formatspecifikationer av typen printfför att skapa strängar som innehåller variabler, uttryck eller värden. Den här metoden använder formatspecifikationer som %d, %f, %s, etc., för att infoga värden i strängar.

Formatera tal — Infoga värden och uttryck i en sträng.

  • %d — Formaterar heltal.

  • %.xf — Anger antalet decimaler som ska visas för flyttal.

  • %x — Formaterar ett tal som hexadecimalt.

  • %c — Formaterar enskilda tecken.

  • %s — Formaterar strängar i C-stil.

Kombinera strängar — Kombinera text och värden.

  • strcat — Sammanfoga strängar i C-stil manuellt.

Kontrollerar delsträngar — Testar textens närvaro eller position.

  • strstr — Hittar en delsträng inom en sträng.

Escape-sekvenser — Formatera utdata med specialtecken.

  • \n — Lägger till en radbrytning (ny rad).

Formatera tal#

C++ använder formatspecifikationer för att styra hur tal och andra datatyper visas i strängar.

Integers#

Formaterar heltal med formatspecifikationen %d.

Format specifiers
%d

Parameters

Denna formatspecifikator har inga parametrar.

Return Values

Formaterar heltalsvärdet som ett heltal i strängen.

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#

Styr hur många decimaler ett flyttal visas med hjälp av formatspecifikationen %.xf.

Format specifiers
%.xf

Parameters

Parameter

Typ

Beskrivning

x

int

Antalet decimaler som ska visas.

Return Values

Formaterar flyttalvärdet med det angivna antalet decimaler.

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

Hexadecimal#

Konverterar tal till hexadecimal representation med hjälp av %x (gemener) eller %X (versaler).

Format specifiers

1 — Formaterar tal som gemener i hexadecimalt format.

%x

2 — Formaterar tal som versaler i hexadecimalt format.

%X

Parameters

Denna formatspecifikator har inga parametrar.

Return Values

Formaterar heltalsvärdet som en hexadecimal sträng.

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

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

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

Characters#

Formaterar enskilda tecken med formatspecifikationen %c.

Format specifiers
%c

Parameters

Denna formatspecifikator har inga parametrar.

Return Values

Formaterar teckenvärdet som ett enda tecken.

Examples
char letter = 'A';

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

Strings#

Formaterar strängar i C-stil (teckenmatriser) med formatspecifikationen %s.

Format specifiers
%s

Parameters

Denna formatspecifikator har inga parametrar.

Return Values

Formaterar strängvärdet som text.

Examples
char message[] = "V5";

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

Kombinera strängar#

Kombinerar två strängar med hjälp av funktionen strcat.

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

Parameters

Parameter

Typ

Beskrivning

string1

char*

Strängen som ska läggas till. Måste ha utrymme för den nya texten.

string2

const char*

Strängen du vill lägga till.

Return Values

Returnerar en pekare till den resulterande strängen (string1).

Notes
  • Se till att strängen har tillräckligt med utrymme reserverat för de tecken som läggs till. Att lägga till tecken i en sträng som är för liten kan skriva över andra variabler och orsaka oväntat beteende.

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

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

Kontrollerar delsträngar#

Returnerar en pekare till positionen för den första förekomsten av en C-stilsträng i en annan sträng med hjälp av funktionen strstr.

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

Parameters

Parameter

Typ

Beskrivning

str

const char*

En pekare till strängen som söks.

substring

const char*

Strängen att söka efter.

Return Values

Returnerar en pekare till den första förekomsten av delsträngen, eller NULL om strängen inte hittas.

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

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

Escape-sekvenser#

Escape-sekvenser är specialtecken som används inuti strängar för att formatera textutdata.

New Line#

Flyttar text till en ny rad vid utskrift med hjälp av escape-sekvensen \n.

Format specifiers
\n

Parameters

Denna escape-sekvens har inga parametrar.

Return Values

Infogar ett nyradstecken i utdata.

Notes
  • Detta fungerar bara i konsolen. Text skickas inte till konsolen förrän en ny rad påbörjas.

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