Как узнать размер Большой строки. С++
Есть код.
#include <string>
#include <stdio.h>
#include <iostream>
int main(void) {
std::string X;
X=system("curl https://education.yandex.ru/handbook/cpp");
std::cout<<X;
std::cout<<"\n\n\n"<<"**" <<"\nSize"<<X.size();
}
Вывод в командной строке такой
**
Size1
Как вывести размер данной строки?
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Медленно и по порядку.
Функция system, описанная, напримр, здесь, возвращает целочисленное значение типа int, при успешном выполнении равное 0.
Далее этот нуль присваивается строке X, которая с помощью оператора operator=(char) присваивает этот нулевой символ вашей строке. Вы получаете строку с одним нулевым символом. Который при выводе в cout на консоли не виден, а размер строки из одного символа, как ни удивительно, равен именно 1, что и выводит ваша программа.
Так что вы уже вывели размер вашей строки X — которая не имеет никакого отношения к тому, что выводит curl.