Fence5 Ответов: 2

Вектор строку в int... Но использование at. (I)?


Привет,

Я несколько знаком с преобразованием с помощью atoi в отношении строки в int:

r.r= atoi(variable.c_str());



Но как я могу использовать это в сочетании с .at (i)?

Если это имеет значение, то строка-это вектор.

Что я уже пробовал:

for (i = 1; i <= stringVariable.size; i++) {
		

MemberFunction(MemberFunction(atoi(stringVariable.at(i)), variable, variable);

}

Philippe Mori

Напишите реальный код в вашем примере.

2 Ответов

Рейтинг:
2

User 59241

Чтобы использовать at(n) с atoi (), используйте его таким образом:

std::vector<std::string> v;

v.push_back("2222");

int i = atoi(v.at(0).c_str());


KarstenK

решение правильное, но проблематичное в сложных сценариях, таких как обработка некоторых ошибок.

Рейтинг:
0

CPallini

Есть C++ как это сделать, попробуйте:

#include <iostream>
#include <sstream>
#include <vector>
using namespace std;

int main()
{
  vector < string > v{ "10", "20", "30" };

  for (const auto & x : v)
  {
    istringstream iss(x);
    int n;
    iss >> n;
    cout << n << endl;
  }
}


KarstenK

Мило и забавно ;-)

CPallini

Спасибо.