Egyéni karakterlánc-formázás#

Bevezetés#

A C+±ban a VEX EXP-hez használt sztringformázás printfstílusú formátumleírókat használ változókat, kifejezéseket vagy értékeket tartalmazó sztringek létrehozásához. Ez a metódus olyan formátumleírókat használ, mint %d, %f, %sstb., értékek sztringekbe való beszúrásához.

Számok formázása — Értékek és kifejezések beszúrása egy karakterláncba.

  • %d — Egész számokat formáz.

  • %.xf — Beállítja az úszópontok esetén megjelenítendő tizedesjegyek számát.

  • %x — Hexadecimális formátumba konvertálja a számot.

  • %c — Egyedi karaktereket formáz.

  • %s — C stílusú karakterláncokat formáz.

Karakterláncok kombinálása — Szöveg és értékek kombinálása.

  • strcat — C stílusú karakterláncok manuális összefűzése.

Alkarakterláncok keresése — Szöveg jelenlétének vagy pozíciójának tesztelése.

  • strstr — Egy karakterláncon belüli alkarakterláncot keres.

Escape szekvenciák – Kimenet formázása speciális karakterekkel.

  • \n — Sortörést (új sort) ad hozzá.

Számok formázása#

A C++ formátumleírókat használ a számok és más adattípusok karakterláncokban való megjelenésének szabályozására.

Integers#

Egész értékeket formáz a %d formátumleíró használatával.

Format specifiers
%d

Parameters

Ennek a formátumleírónak nincsenek paraméterei.

Return Values

Az egész számot a karakterláncban lévő egész számként formázza.

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#

Azt szabályozza, hogy egy lebegőpontos szám hány tizedesjegynyi pontossággal jelenjen meg a %.xf formátumleíró használatával.

Format specifiers
%.xf

Parameters

Paraméter

Típus

Leírás

x

int

A megjelenítendő tizedesjegyek száma.

Return Values

A lebegőpontos értéket a megadott számú tizedesjegyre formázza.

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

Hexadecimal#

A számokat hexadecimális formátumba konvertálja %x (kisbetűs) vagy %X (nagybetűs) alakban.

Format specifiers

1 — A számokat kisbetűs hexadecimális formátumban formázza.

%x

2 — A számokat nagybetűs hexadecimális formátumban formázza.

%X

Parameters

Ennek a formátumleírónak nincsenek paraméterei.

Return Values

Az egész értéket hexadecimális karakterláncként formázza.

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

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

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

Characters#

Az egyes karaktereket a %c formátumleíró használatával formázza.

Format specifiers
%c

Parameters

Ennek a formátumleírónak nincsenek paraméterei.

Return Values

A karakterértéket egyetlen karakterként formázza.

Examples
char letter = 'A';

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

Strings#

C stílusú karakterláncokat (karaktertömböket) formáz a %s formátumleíró használatával.

Format specifiers
%s

Parameters

Ennek a formátumleírónak nincsenek paraméterei.

Return Values

Szövegként formázza a karakterlánc értékét.

Examples
char message[] = "EXP";

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

Karakterláncok kombinálása#

Két karakterláncot egyesít a strcat függvénnyel.

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

Parameters

Paraméter

Típus

Leírás

string1

char*

A hozzáadandó karakterlánc. Kell, hogy legyen hely az új szövegnek.

string2

const char*

A hozzáadni kívánt karakterlánc.

Return Values

Visszaad egy mutatót az eredményül kapott karakterláncra (string1).

Notes
  • Győződjön meg arról, hogy a karakterláncban elegendő hely van lefoglalva a hozzáfűzendő karakterek számára. A túl rövid karakterek hozzáadása egy karakterlánchoz felülírhatja a többi változót, és váratlan viselkedést okozhat.

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);

Alkarakterláncok keresése#

Egy C stílusú karakterlánc egy másik karakterláncban való első előfordulásának pozíciójára mutató mutatót ad vissza a strstr függvény használatával.

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

Parameters

Paraméter

Típus

Leírás

str

const char*

Egy mutató a keresett karakterláncra.

substring

const char*

A keresendő karakterlánc.

Return Values

Visszaad egy mutatót az alkarakterlánc első előfordulására, vagy NULL értéket, ha a karakterlánc nem található.

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

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

Escape szekvenciák#

Az escape szekvenciák speciális karakterek, amelyeket karakterláncokon belül használnak a szövegkimenet formázására.

New Line#

A \n escape-szekvenciával nyomtatva új sorba helyezi a szöveget.

Format specifiers
\n

Parameters

Ennek az escape-szekvenciának nincsenek paraméterei.

Return Values

Beszúr egy új sor karaktert a kimenetbe.

Notes
  • Ez csak a konzolon működik. A szöveg nem kerül a konzolra, amíg új sort nem kezdünk.

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