style: functions
This commit is contained in:
parent
1a15954507
commit
92e4766890
|
@ -201,9 +201,18 @@ void my_diag()
|
||||||
// Принимает: const std::string& s - исходная строка для обработки
|
// Принимает: const std::string& s - исходная строка для обработки
|
||||||
// Возвращает: std::string - строка с экранированными спецсимволами
|
// Возвращает: std::string - строка с экранированными спецсимволами
|
||||||
std::string escape_json(const std::string& s) {
|
std::string escape_json(const std::string& s) {
|
||||||
|
// Возвращаем строку с экранированными символами
|
||||||
|
|
||||||
|
// ===== Объявления =====
|
||||||
std::string result; // Результирующая строка с экранированными символами
|
std::string result; // Результирующая строка с экранированными символами
|
||||||
|
char c; // Символ в строке
|
||||||
|
|
||||||
|
// ===== Инициализация =====
|
||||||
|
result = "";
|
||||||
|
c = '';
|
||||||
|
|
||||||
// Проходим по каждому символу входной строки
|
// Проходим по каждому символу входной строки
|
||||||
for (char c : s) {
|
for (c : s) {
|
||||||
// Обрабатываем специальные символы JSON
|
// Обрабатываем специальные символы JSON
|
||||||
switch (c) {
|
switch (c) {
|
||||||
case '"': result += "\\\""; break; // Экранирование двойных кавычек
|
case '"': result += "\\\""; break; // Экранирование двойных кавычек
|
||||||
|
@ -216,17 +225,24 @@ std::string escape_json(const std::string& s) {
|
||||||
default: result += c; break; // Все остальные символы добавляем как есть
|
default: result += c; break; // Все остальные символы добавляем как есть
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return result; // Возвращаем обработанную строку
|
return result; // Возвращаем обработанную строку
|
||||||
}
|
}
|
||||||
|
|
||||||
bool is_numeric(const std::string& s) {
|
bool is_numeric(const std::string& s) {
|
||||||
// Проверка, является ли строка числом (включая отрицательные)
|
// Проверка, является ли строка числом (включая отрицательные)
|
||||||
|
|
||||||
|
// ===== Объявления =====
|
||||||
size_t start; // Индекс, с которого начинать проверку цифр
|
size_t start; // Индекс, с которого начинать проверку цифр
|
||||||
|
size_t i;
|
||||||
|
|
||||||
|
// ===== Инициализация =====
|
||||||
|
start = 0;
|
||||||
|
i = 0;
|
||||||
|
|
||||||
if (s.empty()) return false; // Пустая строка не может быть числом
|
if (s.empty()) return false; // Пустая строка не может быть числом
|
||||||
|
|
||||||
// Проверяем наличие знака минус в начале
|
// Проверяем наличие знака минус в начале
|
||||||
start = 0;
|
|
||||||
if (s[0] == '-') {
|
if (s[0] == '-') {
|
||||||
// Строка из одного минуса не является числом
|
// Строка из одного минуса не является числом
|
||||||
if (s.size() == 1) return false;
|
if (s.size() == 1) return false;
|
||||||
|
@ -234,16 +250,16 @@ bool is_numeric(const std::string& s) {
|
||||||
start = 1;
|
start = 1;
|
||||||
}
|
}
|
||||||
// Проверяем все оставшиеся символы на цифры
|
// Проверяем все оставшиеся символы на цифры
|
||||||
for (size_t i = start; i < s.size(); ++i) {
|
for (i = start; i < s.size(); ++i) {
|
||||||
// Найден нецифровой символ - строка не число
|
// Найден нецифровой символ - строка не число
|
||||||
if (!isdigit(s[i])) return false;
|
if (!isdigit(s[i])) return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Все проверки пройдены - строка является числом
|
// Все проверки пройдены - строка является числом
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void my_msg() {
|
void my_msg() {
|
||||||
|
|
||||||
printf("begin my_msg"); // debug
|
printf("begin my_msg"); // debug
|
||||||
|
|
||||||
// Объявление
|
// Объявление
|
||||||
|
|
Loading…
Reference in New Issue