c plus plus
  • Введение
  • Строки string
  • Векторы vector
  • Библиотека STL
  • Множества set
  • Словарь map
  • Консоль
  • Многопоточность
Powered by GitBook
On this page
  • Основы работы
  • Перевод из строки в число и наоборот
  • Перевод строк из старого формата в новый и наоборот

Was this helpful?

Строки string

Основы работы

Для работы со строками необходимо подключить библиотеку.

    #include <string>

Создание строки и считывание её содержимого из консоли.

    cout << "Input string:" << endl;
    string s  = "";
    cin >> s;

Вывод значения считанной строки на экран.

    cout << "Your string: " << s << endl;

Получение длины строки.

    int n = s.length();
    cout << "Length of string: " << n << endl;

Сравнение содержимого строк.

    string ss = "hello";
    if(s == ss){
        cout << "YES" << endl;
    } else {
        cout << "NO" << endl;
    }

Получение символа строки под определённым номером.

    cout << "Input number of char in string:" << endl;
    int number = 0;
    cin >> number;
    char c = s[number];
    cout << "Char: " << c << endl;

Замена символов строки под определёнными номерами.

    s[0] = 'X';
    s[1] = 'Y';
    cout << "Changed string:" << s << endl;

Присвоение значений строкам и сложение строк друг с другом.

    string s1 = "aaa";
    string s2 = "bbb";
    string s3 = s1 + s2;
    cout << "String s3: " << s3 << endl;

Перевод из строки в число и наоборот

Для выполнения преобразования типов необходимо подключить дополнительные библиотеки.

#include <string.h>
#include <cstdlib>

Перевод из строки в целое число.

    string s = "-25";
    int n = atoi(s.c_str());
    cout << n;

Перевод из строки в вещественное число.

    string s = "35.567";
    double d = atof(s.c_str());
    cout << d;

Для перевода из целых и вещественных чисел в строки необходимо подключить библиотеку.

#include <sstream>

Пишем функцию, которая может принять на вход целое или вещественное число и преобразовать его в строку.

template <typename tip>
string myFuncToString(tip x){
    ostringstream oss;
    oss << x;
    return oss.str();
}

Вызываем написанную функцию для преобразования целого числа в строку.

    int n = 38;
    string s1 = myFuncToString(n);
    cout << s1 << endl;

Вызываем функцию для преобразования вещественного числа в строку.

    double d = 55.678;
    string s2 = myFuncToString(d);
    cout << s2 << endl;

Перевод строк из старого формата в новый и наоборот

Создадим строку старого формата.

    char s[50];
    strcpy(s,"hello world");

Переведём её в строку нового формата.

    string sss = string(s);

Пример перевода строк из нового стандарта в старый.

  string sss = "I am Maxim";

  char q[40];
  strcpy(q, sss.c_str());
  cout << q;
PreviousВведениеNextВекторы vector

Last updated 5 years ago

Was this helpful?