私はこの答えに取り組んでいました。そして、私は難問に遭遇しました: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
ていないため、これまでのところ私の唯一のオプションのようです。'*'
しかし、誰もが知っているように、機能するからといって、それが定義されているわけではありません。誰かがそれを確認できますか:
- で同じ変数を 2 回割り当てるように定義されています。
get_time
- ストリームは常に左から右に読み取られるため、2番目ではなく1番目の出現が踏みにじられます。
%Y