Renesas Rulz - Japan
Renesas Rulz - Japan
  • User
    Join or sign in
  • Site
  • Search Japan.RenesasRulz.com
  • User
  • Renesas Rulz
  • FAQ
  • パートナー
  • 半導体セミナ
  • eラーニング
  • ヘルプ
  • More
  • Cancel
  • かふぇルネ
  • がじぇるね
  • English Community
  • More
  • Cancel
がじぇっとるねさすコミュニティ
がじぇっとるねさすコミュニティ
GR-ROSE floatをStringにキャストすると、0.00になってしまうのですが
  • Forums
  • Blog
  • Files
  • がじぇっとるねさす ゆーざー会 - Wiki
  • Tags
  • More
  • Cancel
  • New

 

 GR-SAKURA

 GR-KURUMI

 GR-COTTON

 GR-CITRUS

 GR-PEACH

 GR-KAEDE

 GR-ADZUKI

 GR-LYCHEE

 GR-ROSE

 GR-MANGO(*)

 SNShield

 Web Compiler

 IDE for GR

 TOPPERS関連

 女子美コラボ

 その他

 ※プロデューサミーティング中

 作り方使い方資料

 イベント関連

 作品記事

 体験記事

 その他

 

 ライブラリ

 ツール

 その他・過去ファイル

  • State Not Answered
  • Replies 5 replies
  • Subscribers 446 subscribers
  • Views 6187 views
  • Users 0 members are here
Options
  • Share
  • More
  • Cancel
Related Tags
  • B3M
  • DDS-XRCE
  • Dynamixel
  • esp8266
  • FIT
  • GR-ROSE
  • HYGRO
  • ICS
  • include
  • JSTK2
  • KYPD
  • MG996R
  • MIC3
  • NAV
  • OLED
  • pin
  • PMOD
  • ROS
  • ROS2
  • rosserial
  • RS-485
  • RX65N
  • Serial2
  • spi
  • Wire
Related

floatをStringにキャストすると、0.00になってしまうのですが

Aoki Shinji
Aoki Shinji over 2 years ago

floatの値をテキスト化しようとして、

float f=12.345;
String s=(String)f;
String ss=String(f);

としたときに、sやssの値が"0.00"となります。

GR-SAURAでは、"12.35"となります。

これは、私だけでしょうか?

  • Reply
  • Cancel
  • Cancel
Parents
  • Okamiya Yuuki
    0 Okamiya Yuuki over 2 years ago
    いえ、私もです。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • Okamiya Yuuki
    0 Okamiya Yuuki over 2 years ago in reply to Okamiya Yuuki
    原因がよく分かりませんが、sprintf の floatが正しく動いていない様子です。sprintf は、Stringクラスの中で使用されます。

    以下のコードを実行しようとすると、ハングアップします。
    char s[20];
    sprintf (s, "%f", 123.45);

    んー、参りました。デバッガでステップするとどこかに行ってしまいます。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • digiponta
    0 digiponta over 2 years ago in reply to Okamiya Yuuki

    sがなんらかの原因でバッファオーバーしてるとかですかね。スタンダードライブラリ側に問題ありそうですが、ソースは非公開部分なのですね。

    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • Aoki Shinji
    0 Aoki Shinji over 2 years ago in reply to Okamiya Yuuki
    なんか、変なものを発掘してしまったでしょうか。
    当方、回避策(テキストに変換せずに直接Serial.print)を採りました。
    当面の制限事項として、次のVerアップで・・・
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • Okamiya Yuuki
    0 Okamiya Yuuki over 2 years ago in reply to Aoki Shinji
    バッファーオーバーフローであれば、ステップインぐらいはすると思いますので、sprintfの実体がないのかなと思います。なんとなくコンパイラオプションとか、使用する標準libの設定ミスな気はするのですが、簡単そうでなかなか出会わないバグなため、少しお時間をいただきたい感じです。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
Reply
  • Okamiya Yuuki
    0 Okamiya Yuuki over 2 years ago in reply to Aoki Shinji
    バッファーオーバーフローであれば、ステップインぐらいはすると思いますので、sprintfの実体がないのかなと思います。なんとなくコンパイラオプションとか、使用する標準libの設定ミスな気はするのですが、簡単そうでなかなか出会わないバグなため、少しお時間をいただきたい感じです。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
Children
No Data
サイト使用条件
プライバシーポリシー
お問い合わせ
© 2010-2020 Renesas Electronics Corporation. All rights reserved.