宿題の割り当て私は、すべての単語をスペースで区切り、単語を区切ってフォーマットした文字列を受け取るプログラムを作成することになっています。C++の文字列検索プログラムに問題がある
多少説明するのは難しいですが、「StopAndSmellTheRoses」という文字列を「停止してバラの香り」に変換して、この文の最初の文字のみ大文字にする必要があることに注意してください。
ASCIIコードテーブルを使用して文字列で大文字を検索する機能を作成し、その文字列が見つかるとその大文字の前にある文字を新しい文字列に追加します。私はネストされたループを使ってこれを試していますが、 "DEBUG ASSERTION FAILED!"エラーメッセージが表示されます。
これは私がこれまでに書いたこのプログラムの始まりに過ぎず、私のアイデアがコードに正しく翻訳されていないような気がします(私は基本的に、これらのアイデアを実際のコード)。
これまでのところ、私が持っている:
#include<iostream>
#include<string>
#include<cctype>
using namespace std;
void strConvert(string);
int main()
{
string myStr = "StopAndSmellTheRoses";
strConvert(myStr);
system("pause");
return 0;
}
void strConvert(string myStr)
{
string newStr;
for (int i = 1; i <= sizeof(myStr); i++)
{
if (myStr[i] > 'A' && myStr[i] < 'Z')
{
for (int j = 1; j < i; j++)
{
newStr += myStr[j];
}
tolower(myStr[i]);
newStr += '\n';
}
}
cout << newStr;
}
私はNewStrによってすでににmyStrの手紙「を追加する」の私の方法でも動作するかどうか本当にわからないんだけど、それは私がで遊んでてきたものです。誰も私の機能を実行する方法を理解するのを助けてくれませんか?私はおそらく大量のエラーがあることを理解しています、私はC++に新しいです。
ありがとうございました!
'ボイドstrConvert(ストリングmyStr) ' - なぜ基準としてそれを通過しませんか? –