2009-10-28 191 views
0

我想允许用户使用小写字母或大写字母给char类型变量赋值...任何帮助?C++,接受变量中的小写字母和大写字母

+0

你的问题有点含糊 - 能否请您解释得更清楚了吗?你是否想接受用户的字符,然后将其与字符串进行比较,忽略大小写? – LeopardSkinPillBoxHat 2009-10-28 02:14:25

+0

你将需要更精确地指定你所追求的。您可能试图从cin读取输入行,然后在回显行之前将所有非字母字符全部换行。或者你可能试图转换字母的情况,或者其他的东西。或者你可能试图一次处理单个字符(因为'char类型变量'一次只能包含一个字符)。你打算如何处理无效字符?忽略,呜咽,默默终止? – 2009-10-28 02:16:54

+0

您将C++列为您的主要语言 - 您必须意识到变量的值不关心大写/小写。请澄清您的问题,否则将被降低评分。 – Arkadiy 2009-10-28 02:24:29

回答

0

犯错,你的意思是这样(其中getAChar()是你用什么方法来获得字符):

int ch = getAChar(); 
while (!isalpha (ch)) 
    ch = getAChar(); 

另外,如果你想检查用户输入唯一的阿尔法。你可以得到一个字符串:

cin >> myString; 

检查阿尔法很简单,只要:

char *cstr = myString.c_str(); 
for (int i = 0; i < myString.length(); i++) 
    if (!isalpha (*cstr++)) 
     return false; 
return true;