Định dạng chuỗi tùy chỉnh#
Giới thiệu#
String formatting in C++ for VEX EXP uses printf-style format specifiers to create strings that include variables, expressions, or values. This method uses format specifiers like %d, %f, %s, etc., to insert values into strings.
Định dạng số — Chèn giá trị và biểu thức vào chuỗi.
%d— Định dạng số nguyên.%.xf— Đặt số lượng chữ số thập phân hiển thị cho số thực.%x— Định dạng một số dưới dạng thập lục phân.%c— Định dạng các ký tự đơn.%s— Định dạng chuỗi kiểu C.
Kết hợp chuỗi — Kết hợp văn bản và giá trị.
strcat— Nối chuỗi kiểu C theo cách thủ công.
Kiểm tra chuỗi con — Kiểm tra sự hiện diện hoặc vị trí của văn bản.
strstr— Tìm một chuỗi con trong một chuỗi.
Chuỗi thoát — Định dạng đầu ra với các ký tự đặc biệt.
\n— Thêm dấu ngắt dòng (dòng mới).
Định dạng số#
C++ sử dụng các định dạng đặc tả để kiểm soát cách các số và các kiểu dữ liệu khác xuất hiện trong chuỗi.
Integers#
Định dạng các giá trị số nguyên bằng cách sử dụng bộ định dạng %d.
%d
Bộ chỉ định định dạng này không có tham số.
Return ValuesĐịnh dạng giá trị số nguyên thành chuỗi ký tự.
Examplesint 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#
Điều khiển số lượng chữ số thập phân mà một số thực được hiển thị khi sử dụng định dạng chỉ định %.xf.
%.xf
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Số lượng chữ số thập phân cần hiển thị. |
Định dạng giá trị dấu phẩy động với số chữ số thập phân được chỉ định.
Examples// Display pi with 2 decimal places
double pi = 3.1415926535;
Brain.Screen.print("Pi: %.2f", pi);
Hexadecimal#
Chuyển đổi các số sang dạng thập lục phân bằng cách sử dụng %x (chữ thường) hoặc %X (chữ hoa).
1 — Định dạng số thành dạng thập lục phân chữ thường.
%x
Parameters2 — Định dạng số dưới dạng chữ hoa thập lục phân.
%X
Bộ chỉ định định dạng này không có tham số.
Return ValuesĐịnh dạng giá trị số nguyên thành chuỗi thập lục phân.
Examples// Convert 255 to hexadecimal
int number = 255;
// Display hexadecimals
Brain.Screen.print("Hex: %x", number);
Brain.Screen.print("Hex: 0x%X", number);
Characters#
Định dạng các ký tự đơn lẻ bằng cách sử dụng bộ định dạng %c.
%c
Bộ chỉ định định dạng này không có tham số.
Return ValuesĐịnh dạng giá trị ký tự thành một ký tự duy nhất.
Exampleschar letter = 'A';
// Display a single character variable
Brain.Screen.print("Letter: %c", letter);
Strings#
Định dạng chuỗi ký tự (mảng ký tự) kiểu C bằng cách sử dụng bộ định dạng %s.
%s
Bộ chỉ định định dạng này không có tham số.
Return ValuesĐịnh dạng giá trị chuỗi thành văn bản.
Exampleschar message[] = "EXP";
// Display a string variable
Brain.Screen.print("Hello, %s", message);
Kết hợp các chuỗi#
Kết hợp hai chuỗi ký tự với nhau bằng cách sử dụng hàm strcat.
char* strcat(char* string1, const char* string2);
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Chuỗi cần thêm vào. Phải có khoảng trống cho văn bản mới. |
|
|
Chuỗi ký tự bạn muốn thêm vào. |
Trả về con trỏ đến chuỗi kết quả (string1).
Hãy đảm bảo chuỗi ký tự có đủ không gian dành riêng cho các ký tự được thêm vào. Việc thêm ký tự vào một chuỗi quá nhỏ có thể ghi đè lên các biến khác và gây ra hành vi không mong muốn.
// 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);
Kiểm tra chuỗi con#
Trả về con trỏ đến vị trí xuất hiện đầu tiên của một chuỗi kiểu C trong một chuỗi khác bằng cách sử dụng hàm strstr.
char* strstr(const char* str, const char* substring);
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Con trỏ trỏ đến chuỗi cần tìm kiếm. |
|
|
Chuỗi ký tự cần tìm kiếm. |
Trả về con trỏ đến vị trí xuất hiện đầu tiên của chuỗi con, hoặc NULL nếu không tìm thấy chuỗi.
char message[] = "Hey everyone!";
// Display if "Hey" is in the variable
if (strstr(message, "Hey") != NULL) {
Brain.Screen.print("Hello!");
}
Trình tự thoát hiểm#
Các chuỗi thoát là các ký tự đặc biệt được sử dụng bên trong chuỗi ký tự để định dạng văn bản đầu ra.
New Line#
Di chuyển văn bản xuống dòng mới khi in bằng chuỗi thoát \n.
\n
Chuỗi thoát này không có tham số.
Return ValuesChèn ký tự xuống dòng vào đầu ra.
NotesChức năng này chỉ hoạt động trên bảng điều khiển. Văn bản sẽ không được gửi đến bảng điều khiển cho đến khi bắt đầu một dòng mới.
// Display text on two lines
printf("First line\nSecond line\n");