ユーザーが数字ではなく文字である入力を行っているかどうかを確認しようとしています。数値以外の値が指定されている場合、「不正な形式」のようなアラートエラーメッセージを出力したい。入力値を確認する
-(IBAction)btnPressed{
NSString *firstString = textFiled1.text;
NSString *secondString = textFiled2.text;
NSString *thirdString = textFiled3.text;
int num1;
int num2;
int num3;
int output;
num1 = [firstString intValue];
num2 = [secondString intValue];
num3 = [thirdString intValue];
output = (num1 + num2)/num3;
lable1.text = [NSString stringWithFormat:@"%d",output];
}
ありがとうございます:) –
'decimalDigitCharacterSet'には0以上9以上の*が含まれているので、これは正しく動作しません。他のスクリプト/言語の数字も含みます。また、入力が負の場合(これは要件として規定されていませんがどちらかといえば考慮する必要があります)、失敗します。 – dreamlax
それは本当だと思います。同じ基本的な方法を、 ' - '(とその点については '。')を含む文字セットで簡単に使用できます。文字セットに実際にはここで失敗している非アラビア数字が含まれているという事実。しかし、実際には望ましい状況もあります。 –