Мне нужно добавить значение строки2 к строке1 без использования метода добавления в библиотеке строк. Пока что мне удалось сделать это только:
#include<iostream>
#include<string>
using namespace std;
int main(){
string s1="Messi ";
string s2="best";
int i=s1.size();
int j=s2.size();
int count;
for(count=0;count<=j;count++){
s1[i++]=s2[count];
}
cout<<s1;
}
Но это только дает мне значение s1, которое равно «Месси». Однако я проверил это: s1 [8]. Поскольку s1 имеет индекс 5, s1 [8] не должен работать, верно? Но это так, и я получаю «s», который находится в s2. Таким образом, это означает, что значение s2 действительно идет в s1, но каким-то образом ввод s1 показывает только «Messi».
Причина, по которой я спрашиваю это, потому что нам дали этот набор инструкций для реализации программы (да кажется, что он используется в c строках, но нам было сказано реализовать в строковом объекте):
Step 1: Initialize i= strlen(s1)
Step 2: Initialize j=strlen(s2)
Step 3: Initialize count=0
Step 4: Repeat steps 5 to 7 while count<=j
Step 5: s1[i]=s2[count]
Step 6: i=i+1
Step 7: count=count+1