【发布时间】:2014-04-20 23:21:55
【问题描述】:
这是我写的代码。当我输入诸如“a”之类的小写字符时,它会给我一个空白字符,但之后效果很好。你能告诉我我做错了什么吗?谢谢。 :)
#include <iostream>
#include <string>
using namespace std;
int main()
{
char letter;
cout << "You will be asked to enter a character.";
cout << "\nIf it is a lowercase character, it will be converted to uppercase.";
cout << "\n\nEnter a character. Press . to stop: ";
cin >> letter;
if(islower(letter))
{
letter = isupper(letter);
cout << letter;
}
while(letter != '.')
{
cout << "\n\nEnter a character. Press . to stop: ";
cin >> letter;
if(islower(letter))
{
letter = toupper(letter);
cout << letter;
}
}
return 0;
}
【问题讨论】:
-
因为你第一次打印一个bool值。
-
您希望这能做什么?
letter = isupper(letter); cout << letter;。isupper可以返回什么,在 ASCII 中对应什么? -
你能告诉我应该如何修改我的代码吗?
-
谢谢大家,这是我犯的一个愚蠢的错误。我以为我将两个部分的 isupper() 修改为 toupper() 。哈哈谢谢。 :)
标签: c++ uppercase lowercase toupper