0

私はこの答えに取り組んでいました。そして、私は難問に遭遇しました:scanf抑制している割り当てがあり'*'ます:

このオプションが存在する場合、関数は変換の結果を受け取り引数に代入しません。

しかし、で使用するとget_time'*'Visual Studio、libc++、および libstdc++ で実行時エラーが発生するstr >> get_time(&tmbuf, "%T.%*Y")ため、サポートされていないと思います。

tmbuf.tm_yearそのため、 2 回読み込むことで入力を無視することにしました。

str >> get_time(&tmbuf, "%H:%M:%S.%Y UTC %b %d %Y");

これは機能し、受け入れられget_timeていないため、これまでのところ私の唯一のオプションのようです。'*'しかし、誰もが知っているように、機能するからといって、それが定義されているわけではありません。誰かがそれを確認できますか:

  1. で同じ変数を 2 回割り当てるように定義されています。get_time
  2. ストリームは常に左から右に読み取られるため、2番目ではなく1番目の出現が踏みにじられます。%Y
4

1 に答える 1

1
于 2016-06-16T14:57:08.317 に答える