私はこのコードを持っています:
double s = [year.text doubleValue]*31536000;
second.text=[[NSString alloc] initWithFormat:@"%2g", s];
最終結果を計算しようとすると、3.1536e+07
31536000せずに結果を出すにはどうすればよいe+07ですか?
私はこのコードを持っています:
double s = [year.text doubleValue]*31536000;
second.text=[[NSString alloc] initWithFormat:@"%2g", s];
最終結果を計算しようとすると、3.1536e+07
31536000せずに結果を出すにはどうすればよいe+07ですか?
%gand%G変換は、指数が-4未満、または精度以上の場合、または(それぞれ)のスタイルで引数を出力します%e。%Eそれ以外の場合は、%fスタイルを使用します。
を使用する必要があります%f。
double s = [year.text doubleValue]*31536000;
second.text=[[NSString alloc] initWithFormat:@"%f", s];
単純な使用%f。
NSString *str = [[NSString alloc] initWithFormat:@"%f", s];
second.text = str;
second「e+07」のない文字列になる可能性があります
これは、浮動小数点数fを使用して作業しているためです。
試してみてください:
double s = [year.text doubleValue]*31536000;
second.text=[[NSString alloc] initWithFormat:@"%lf", s];