これは文字列内のアルファベットの大文字と小文字を交換する簡単なコードです。それにはアルファベットだけが含まれていると仮定します。しかし、それは最初の文字列を出力するだけで、toupper()とtolower()関数にもかかわらず変更はありません。toupper()とtolower()が動作しない
#include<iostream>
#include<ctype.h>
using namespace std;
void main()
{
char sentence[30];
int i;
cout << "enter a sentence: ";
cin.getline(sentence, 30, '\n')
for (i = 0; i != '\0'; i++)
{
if (isupper(sentence[i]))
sentence[i] = tolower(sentence[i]);
else
sentence[i] = toupper(sentence[i]);
}
cout << sentence;
system("pause");
}
'I =「\ 0''あなたはこれが真実であることを期待しますか!?ループの前に 'sentence'を印刷しようとしましたか?なぜ 'std :: string'の代わりに' char [30] 'を使うのですか? –