как скопировать часть массива c++
Всем привет Нужна помощь задача такая Юзер вводит строку с таким знаком _ и ее нужно разделить Пример user_harry А вывести user harry Это я сделала но проблемка в Другом как я понимаю Нооо не могу понять в чём .Нужно эти два слова разделённые тобишь user harry переписать в два массива .И что ? Помогите .Помощь с кодом не нужна
#include <iostream>
using namespace std;
int main() {
string user;
cout << "-> " << endl;
cin >> user;
int len = user.length();
int myIndex;
string mssUser[len], priceTovar[len], nameTovar[len];
for (int i = 0; i < len; i++) {
mssUser[i] = user[i];
}
for (int i = 0; i < len; i++) {
if (mssUser[i] == "_") {
myIndex = i;
}
}
/*
for (int i = 0; i < myIndex; i++)
{
mssUser[i] = priceTovar[i];
}
for (int i = myIndex; i < len; i++)
{
mssUser[i] = nameTovar[i];
}
*/
/*2+2=4
*/
for (int i = 0; i < len; i++)
{
if (myIndex <=nameTovar)
{
mssUser[i] = nameTovar[i];
}
else
{
mssUser[i] = priceTovar[i];
}
}
for (int i = 0; i < myIndex; i++)
{
cout << nameTovar[i];
}
cout << endl;
for (int i = myIndex; i < len; i++)
{
cout << priceTovar[i];
}
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Вот примерное решение вашей задачи...
int main()
{
string user;
cout << "-> ";
cin >> user;
string a, b;
if (size_t pos = user.find('_'); pos != user.npos)
{
a = user.substr(0,pos);
b = user.substr(pos+1);
cout << a << "\n" << b;
}
else
{
cout << "No _ in input\n";
}
}