depolanması Bu görevi belirli bir ölçüde gerçekleştiren bir kod yazım var. Ancak, kodumun nasıl değiştirileceğini öğrenmek isterim ki, kullanıcı vektöre girmek istediği çok sayıda dize girdisini saklayabilirim.C++ - Virgülle ayrılmış kullanıcı giriş dizesinin vektöre
#include <iostream>
#include <cstring>
#include <vector>
using namespace std;
int main()
{
string input = "";
cout << "Input: ";
cin >> input;
string a,b;
for(int i = 0; i<input.size(); i++)
{
if(input.at(i)==','){
a=input.substr(0,i);
b=input.substr(i+1);
}
}
vector<string> objects;
objects.push_back(a);
objects.push_back(b);
for (int k = 0; k < 2; k++) {
cout << objects[k] << endl;
}
return 0;
}
Şimdiye kadar, sadece tanımak ve virgülle ayırarak iki giriş saklayabilirsiniz:
İşte benim kodudur. Kodlamada çok yeniyim, bu yüzden birisi bunu bir döngü haline getirmenin ve kullanıcı girdikçe çok sayıda girdi almanın bir yolunu gösterebilir mi?
Teşekkür ederiz.
Bu için çalışmaz 'bu benim liste, a, b, c, d olduğunu satırın sonu. – Shark
Sorun, for döngüsündedir; Her yinelemeden sonra vektöre A ve B'yi itmiyorsunuz. Her iterasyonun sonunda dizeleri vektöre koymanız, ardından tekrarlamanız gerekir. @Shark'ın işaret ettiği gibi mantığınızda küçük sorunlar da var. –