ユーザ入力を他のユーザ入力に置き換える際に問題が発生しています。C文字列を扱うときに、最初の入力を現在の入力に置き換えるにはどうすればいいですか?
たとえば、ユーザーが「私は犬を愛している」と入力し、他の文字列を入力したいと尋ねて、「私はたくさんのアイスクリームを食べます」と入力します。
ユーザーの最初の入力を現在の入力に置き換えるにはどうすればよいですか?
// Function Prototype
int countVowels(char * str);
int countCons(char * str);
int main()
{
const int SIZE = 81; // Max size of the array
//const int V_SIZE = 6; // Size of the vowel array
char newSentence[SIZE];
char userString[SIZE];
//char vowels[V_SIZE] = {'a', 'e', 'i', 'o', 'u'};
char choice; // To hold the menu choice
char *strPtr = userString; // Declare and initialize the pointer
char *sentPtr = newSentence;
// Get the string from the user
cout << "Please enter a string. (Maximum of 80 characters) :\n\n";
cin.getline(userString, SIZE);
do{
// Display the menu and get a choice
cout << "\n\nA. Count the number of vowels in the string \n";
cout << "B. Count the number of consonants in the string \n";
cout << "C. Enter another string \n";
cout << "D. Exit the program \n\n";
cout << "Please make your selection: ";
cin >> choice;
// Menu selections
if (tolower(choice) == 'a')
{
countVowels(userString);
cout << "This string contains " << countVowels(userString);
cout << " vowels. \n";
}
else if (tolower(choice) == 'b')
{
countCons(userString);
cout << "This string contains " << countCons(userString);
cout << " consonants. \n";
}
else if (tolower(choice) == 'c')
{
cout << "Please enter other string: ";
cin.getline(newSentence, SIZE);
userString.replace();
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
}
else
{
system("PAUSE");
return 0;
}
} while (choice != 'D');
}
メニュー選択に問題があります。C:userStringをnewSentenceに置き換えるにはどうすればよいですか?
コードがC++で記述されている場合は、cタグが不要です。 –
どういう意味ですか? –
あなたの質問から 'c''タグを' C++ '' c''文字列 'タグリストから削除するだけです。 –