#include "stdafx.h"
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string output;
string words;
int i;
int main()
{
cin >> words; // gets words from user
output = ""; // readys the output string
i = 0; // warms up the calculator
int size = words.size(); // size matters
while (i <= size) { // loops through each character in "words" (can't increment in the function?)
output += ":regional_indicator_" + words[i] +':'; // appends output with each letter from words plus a suffix and prefix
++i;
}
cout << output << endl; // prints the output
return 0;
}
私はこのコードを意図していますが、私は思っています。単純に文を取って、すべての文字をその文字+接尾辞と接頭辞に置き換えます。 私の問題は、デバッガで実行すると、私は"hello world"
を入力し、プログラムは"osss"
を出力するということです。ランダムな文字を出力する文字列変更プログラム
私はC++で全く教育を受けておらず、ここでは完全に喪失しています。それは私の++i
ですか?
'cinを>>言葉;'、1つの単語だけではなく、ライン内のすべての単語を読み込みます。 – Barmar
'+'を使って文字列リテラルと文字を連結することはできません。引数の1つは 'std :: string'でなければなりません。 – Barmar