正如我所读到的,在我自己初始化之前,C ++编译器使用随机数据初始化表。 我有一个程序,在执行后(例如)给我这个输出 - char表。
{'D','K','2','EMPTY FIELD','1','+','EMPTY FIELD','EMPTY FIELD','3','EMPTY FIELD','/'}
现在我想删除整个不方便的数据,如字母和空字段。 我尝试通过此代码实现此目的,但我认为它将其转换为ASCII代码。我能以另一种方式实现这一目标吗?
char wynik[20];
int j = 0;
for (int i = 0; i <20; i++)
{
if (wyjscie[i] == '+' || wyjscie[i] == '-' || wyjscie[i] == '/' || wyjscie[i] == '*' || (wyjscie[i] >-241241 || wyjscie[i] < 2141242142 ))
{
wynik[j] = wyjscie[i];
j++;
}
}
答案 0 :(得分:1)
(wyjscie[i] >-241241 || wyjscie[i] < 2141242142 )
是你的问题。您会混淆字符表示的整数值和字符的整数代码。如果您想检查字符c
是否在0到9之间,您可以执行c >= '0' && c <= '9'
。